A compelling reason for Perl6
Had a great chat with the Thousand Oaks PerlMongers last night, as an ongoing series of conversations I've been having recently about finding a compelling reason for Perl6.
I was inspired by Larry's Onion talk to continue thinking about the relation of Perl5 and Perl6 (and frankly, me and Stonehenge as well).
First, Perl6 is not "the next Perl5". Perl5 will be alive and well for another decade at least, independently maintained and released. That's happening quite efficiently and effectively already. (Translated: "I will quite possibly be able to continue making money off Perl5 for years to come".)
So, what is Perl6 then? It's a different language. Businesses aren't going to migrate from Perl5 to Perl6, but they will consider Perl6 for a new project, just as if they'd consider Ruby or Python or Grails or Scala or any other language.
What's missing is the equivalent for what Rails did for Ruby: a compelling web framework.
If we had a compelling web framework for Perl6, people would start taking notice. And like Rails, I think we can start by building something to "eat our own dogfood". Perhaps a Perl6 equivalent of Perlmonks or Mediawiki. Whatever it is, it should be an application that will also be able to be used by other communities, so that people will want to start using not only the application, but also the framework.
The framework might be a derivative of Catalyst, or something entirely new that takes advantage of pluggable grammars and DSLs. I don't know.
I know the framework needs tight integration with client-side libraries like jQuery though.
One thing I'd really like to get into such a framework is some sort of coroutine or continuation processing. A recent IRC chat left me a bit disappointed that proper Seaside-style continuations aren't possible with Perl6, but maybe something similar could be created.
Rakudo Star might not be fast enough or complete enough for this at the moment, but if we can organize the development of this framework, we could also be Rakudo's biggest customer in a short while... driving development.
But more importantly, moving Perl6 from "this is an interesting idea" to "this language actually gets things done".
Is it time to start on this? I think so. I'm still wildly brainstorming, so I don't have a lot more to say yet. But maybe you do.
If you are interested in helping me brainstorm this idea, maybe we can set up a mailing list or something. I'm also interested in hearing if pieces of this are already in play, so maybe it's just a matter of coordination.