in reply to Re: Perl6 Contest #2: P6 That Doesn't Look Like P5
in thread Perl6 Contest #2: P6 That Doesn't Look Like P5
This is nice, except I have one small quibble. You have used map in a void context, with side effects. I usually avoid doing this, as I think it adds nothing over an equivalent for loop, other than obfuscation. So, I'd change:
when 1 { @loop[0].map:{ yield [$^first] }; yield undef }
To:
when 1 { for @loop[0] { yield [$^first] } yield undef }
Much like similar circumstances in Perl 5, not only is the for loop shorter (update: shorter only due to the semicolon, but shorter nonetheless), I also think it's clearer. The less superfluous syntax we use, the better. :-)
Update: based on the replies, I perhaps should have added a disclaimer. This post is about style and based on my personal preferences. I was not arguing in terms of performance or functionality, merely in terms of style. My personal style preference is to favor alternatives with fewer syntax characters, all else being equal. That's the essence of what I was trying to convey.
|
---|
Replies are listed 'Best First'. | |
---|---|
Map in void context
by kaif (Friar) on Jun 03, 2005 at 16:52 UTC | |
Re^3: Perl6 Contest #2: P6 That Doesn't Look Like P5
by mugwumpjism (Hermit) on Jun 02, 2005 at 22:45 UTC | |
Re^3: Perl6 Contest #2: P6 That Doesn't Look Like P5
by geoffb (Novice) on Jun 02, 2005 at 22:33 UTC |