I don't grant the premise. Perl 6 is less complex than Perl 5. Number of operators is not remotely a measure of complexity. Neither is "size of the interpreter at runtime". "Number of things that the language does for you in a standardized way" is actually a measure of simplicity, not complexity. That is to say that the extra size of the language & interpreter comes from the complexity-reducing features that are built in to the language. Complexity is about such things as seeing action happen in the expected place, keeping concerns separating, reducing the code to the essential ideas that are being expressed, self-documentation, and non-redundancy. Perl 6 does a better job of all that than Perl 5 does. Part of the way that Perl 6 accomplishes this complexity reduction is by generalizing and standardizing the best practices that the software industry has developed since Perl 5 was written, which means more things are included in the language itself.
Put another way: whether or not there's an operator that does what you need in a standardized, optimized way, or you roll it together from primitives in a function declaration that anyone maintaining the code will have to read and understand on a case-by-case basis, the action that you take in the code still needs to get done somehow. Perl 6 programs will be smaller, when measured in LOC, than their Perl5 counterparts. As a maintainer, your sysadmin should be happy about that. Maybe we just need to lay off of the cute one liners and * operator abuse when we demo Perl 6. My guess is that those one liners are not nearly as impressive to most workaday coders as the type system, MMD, grammars, private data, and method keyword. These at least are the main features of Perl 6 from my point of view (even though I fully grant that Perl 6 is different things to different people - he might be able to get excited about the behavior of the MAIN type sig, for instance). I'm not saying anything about performance because I think we're all on "wait and see" mode right now. I don't think there are any theoretical obstacles that make Perl 6 fundamentally slower than Perl 5, Python, or Ruby, (right guys?) and there are actually provisions to let it be faster for certain applications - particularly the type system. -----Original Message----- From: szab...@gmail.com [mailto:szab...@gmail.com] On Behalf Of Gabor Szabo Sent: Tuesday, February 22, 2011 10:58 AM To: perl6-users Subject: Fwd: FOSDEM - perl 6 critic hi, At FOSDEM I met Arne Wichmann who is a long time sysadmin, Debian developer and Perl user. We had a short chat in which he expressed his concerns about the complexity, the size (memory footprint) and speed of Perl 6, Without even taking in account the current memory requirements and speed of Rakudo, I guess, even after lots of improvements we can expect Rakudo to be significantly slower than Perl 5.10 - at least for start-up time - and significantly more memory hungry. I know it will do a lot more so the comparison is not fair but that's not the point. ( For a better comparison that takes in account the features as well see http://www.modernperlbooks.com/mt/2010/07/an-accurate-comparison-of-perl-5-a nd-rakudo-star.html ) He, as a sysadmin would like to do the small tasks in a relatively small language. He would like to make sure the modules/applications he will download and will have to support are in such a relatively small language. I wrote him my opinion but I think it would be important to address these issues. (Of course if there already is a page somewhere answer these concerns I'd be happy to just get a link) Here is his e-mail. (forwarded with permission). regards Gabor ---------- Forwarded message ---------- From: Arne Wichmann <a...@anhrefn.saar.de> Date: Mon, Feb 21, 2011 at 4:00 PM Subject: FOSDEM - perl 6 critic To: ga...@perl-ecosystem.org Hi... You gave me your card when we were leaving FOSDEM, it took me some time to write a mail... The topic was: why I am very sceptic about perl6... First, my background: I am a perl hacker since '91 (or so), but mainly I am a sysadmin. That means, I do not write a lot of code, but I do a lot of debugging of other peoples code. >From that background, what I have seen in perl6 does not look like a good idea to me: it is too complex. When I read other peoples code I have to be able to understand whatever subset of the perl language they choose to use - which means I have to be able to grasp any concept used in the language. And given the number and complexity of operators in perl 6 I do not feel that this is really doable. My other gripe is that perl5 nowadays already is too big - it takes too much memory and time for small tasks. But that is only secondary. cu AW -- [...] If you don't want to be restricted, don't agree to it. If you are coerced, comply as much as you must to protect yourself, just don't support it. Noone can free you but yourself. (crag, on Debian Planet) Arne Wichmann (a...@linux.de)