I was chatting with a P6 person the other day (who can remain nameless unless he chooses to identify himself). He made the following observation:

Every time we're lambasted for how long Perl 6 is taking I remind myself that Short Term Thinking is the norm now.

I think there are a couple of reasons for this lambasting, and the more important (and remediable) one is lack of education on the part of the baster. They don't understand :

        (A) how hard it is to design a language; and,
        (B) how much progress really has been made.

I'd like to propose that there be a single web page (or maybe a small wiki, but one page might be preferable) somewhere that could be pointed at to show just how much has been done. It could list all the CPAN modules in the Bundle::Perl6 module (are those all Perl6 modules explicitly or are some of them support framework?), all the sites where Pugs has been deployed in production (I gather there are some?), any non-toy / non-arcane projects that are being worked on in Perl6, etc. I suppose it could also list the various language implementations that are targetting Parrot, but that's much less impressive to the common hacker who just wants to get work done, and not terribly relevant to the question "Why is __Perl6__ taking time?".

Also, the page should talk about why it is difficult to do what is being done. Ask the reader questions: "You want to <support continuations / have coroutines / embedd yacc in your language / whatever>. How do you do it?" Then offer up an analysis of various design choices that were considered and rejected and why. In particular, since the average person probably thought of the naïve answer, shoot big holes in that one. That way they sit up and say "Oh. Hmm, I guess this really is kinda hard."

I see this as a small effort towards community outreach, where "community" is both the existing Perl people and the wider Internet. I volunteer to create the page, host it, and maintain it, but I would need help gathering the information in the first place. And if the Perl6 community doesn't think it's a good idea, then I won't bother.



Reply via email to