in reply to Exegesis 2 - Perl 6
Just thought I'd add my impressions to the pile.
Contextually, on the whole I'm looking forward to Perl6.
- I'm not a fan of the dot operator. I find it hard to "pick out" when scanning code. The arrow operator is more intuitive to me. Oh well.
- I'm leery of the "prompts" operation. That seems like it should either be dropped as bloat, or a more vague property, such as a hook called when inputting/outputting that we can fill in our own routine for. I'm very interested to see how efficiency is maintained with this.
- I'm very happy to see subroutine argument passing done better. I think the rather kludgy perl5 method leads to more global variables and less maintainable code. I think this is the most significant improvement of all.
- I'm a little confused by the properties. Is "%node{VALUE} = $val is Found(0);" identical to $val.Found=0; %node{VALUE}=$val;"?
- Am I the only one finding the is syntax confusing? I think it has great potential (Perl has always impressed me by using English), but I'm a bit perplexed...
- Along the same note, I'm a little disappointed with $tree is rw and the prop accessor. Is there a reason we can't give these English terms? Saving keystrokes is all well and good, but not at the expense of readability. btw may not have been the ideal choice, but something linguisticly like that appeals to me.
- return 0 is true; Obfuscation will love this one :) Only from the minds of perl programmers. (said with pride)
- I'm very interested in finding out the string concat operator and the array slice notation. Clarity will win a lot of points with me. (Maybe we should make perl parsers keel over and die by using ++ for the string concat?)
- If the sigil is no longer helping to determine context, does that mean we are going to have an increase in @{[$foo->bar()]} uglyness?
- Damian mentions how @{$zref}{'b','c'}; evaluates under perl5, but not the equivilent under perl6. I much prefered the idea of one name for all types of a variable (i.e. $foo and @foo are the same variable in different contexts), with the sigil indicating return value, but I guess it's my own fault for not participating :)
|
---|
In Section
Meditations