Moritz Lenz's blog on Perl 6 (now Raku), covering the language, its compilers, pattern matching, and yearly retrospectives.
Commenters recommend his Perl 5 to 6 articles as helpful even without Perl 5 knowledge, and link his posts on Perl 6 design and destructuring.
I'm right there with you. Having a small core has several drawbacks.
Having a LARGE core does as well, and mostly that any modules in the Perl core seem to also have their API and features frozen in time. Even if those features and API are not so good - it's in core! So, there's a reason to keep them how broken they are for backwards-compatibility sake.
I've also felt the burn of a core module that's then removed, and the new maintainer now going absolutely wild changing things. I understand exactly why they want to change things, and would not disagree with their ideas in a vacuum, but it causes great grief to me when I'm supporting apps that relied on in-core modules that have been upgraded out of core.
I wanna say that this problem is being used as a lesson for Perl 6 - that the core for the, "official/main/whatever" distro is going to be kept very spartan, but it's going to be encouraged to build upon that distro for your own Perl 6 releases. So, if you want the, "Web Framework" release, it'll come with all the bits and pieces you need to get that going - however editorialized that selection will be.
Moritz talks about this concept, here:
http://perlgeek.de/blog-en/perl-6/how-core-is-core.html
Although this post is pretty old, and I'd hate to say that their line of thinking now.
Can you imagine how weird I felt when I finished my "forever" project?
Ever since school I wanted to write a simulation tool similar to one I've used in school, which basically lets you write differential equations in graphical form, and integrates them for you. And back when I was in school, I didn't know a thing about differential equations, and it all looked like amazing magic to me.
And while studying physics, I learned about DGLs and Runge-Kutta integration, and then I "just" needed to manage all the data (do a topological sort on the nodes to evaluate all the formulas in correct order), stuff it into the Runge-Kutta solver, and graph the output. Yay.
I never got around to writing the graphical front end, but the all interesting (to me) parts of the program are there. Oh, and it's written in Perl 6, the programming language I help to develop in my free time. If you're interested, check out http://perlgeek.de/blog-en/perl-6/physical-modelling.html
These days Perl 6 is my main "forever"-project, and it's coming along nicely.
>>you're saying Modern Perl, they're saying Modern Perl. What is it about?
It is a bit debated. See e.g. http://perlgeek.de/blog-en/perl-tips/what-is-modern-perl.html
Also, at the risk of sounding ironic I must ask -- you are really not aware of a web service called "Google" and its (many) competitors? Try e.g. this when you see unknown terms:
http://www.google.com/search?&q=modern+perl
>>ironic how they praise pngout [...] publish 42MB presentation...
Ah, yes. Publishing a big pdf from a presentation do take away all points in the pdf about image sizes sent from a web server. [Edit: For the sleep/caffeine deprived: This was irony.]
Edit: OK viraptor, sorry for being sensitive.
Edit: After reading, what I miss is more discussion about how the game logic was implemented; for fun I've done 2/3 of a couple of board games' logic which literally was hundreds of pages each (which I should finish, sigh).
Generically these are called twigils, ie. it has a second sigil.
This second sigil describes what it does differently to single sigil variable. For eg. an asterisk denotes a contextual twigil variable...
$*IN # equiv to STDIN in perl5
$*OUT # and STDOUT
The ^ twigils denote placeholder variables. In Perl5 there is already implicily defined package variables called $a & $b so that you can do...
sort { $a <=> $b } @array;
In Perl 6 these are replaced with the ^ twigils so you can do...
sort { $^a <=> $^b }, @array;
or even...
sort { $^x <=> $^y }, @array;
ref: http://perlgeek.de/en/article/5-to-6#post_15 & http://perlcabal.org/syn/S06.html#Placeholder_variables
BTW, Perl6 Placeholders have been ported back to Perl5 - https://metacpan.org/module/Perl6::Placeholders
Check out the PDF of the draft of the Perl 6 book in the R * distribution (as docs/UsingPerl6-draft.pdf or something similar).
The Perl 5 to 6 articles at http://perlgeek.de/en/article/5-to-6 are very helpful even if you aren't familiar with Perl 5. One thing to remember about them is that they describe Perl 6 as specified, regardless of whether any of the implementations fully support the relevant features.
The Perl 6 Advent Calendar from last Winter (http://perl6advent.wordpress.com/2009/12/01/perl-6-advent-calendar/) is more of a "Here are some really cool things about Perl 6" series of articles, but they are also pretty good reads for learning the language.
You may want to read the Apocalypse documents ( http://perl6.org/archive/doc/apocalypse.html ) and the Exegeses ( http://perl6.org/archive/doc/exegesis.html ).
Perl 6 improves upon Perl 5 in countless ways. One of the strongest parts of perl, the regular expressions, have received further improvements. Check out https://en.wikipedia.org/wiki/Perl_6_rules
Finally, if you are familiar with Perl 5, there's special documentation for you at http://perlgeek.de/en/article/5-to-6