On Tuesday, January 21, 2003, at 01:31 PM, Smylers wrote:
I still dislike it, but if a variation upon it means we can make things like C<for>, C<if>, etc. semi-normal functions, instead of cases within the grammar, then I think everyone agrees that would be a Good Thing. Keeping one grammar special case in return for not having a dozen others -- yeah, I'll sign up for that.Michael Lazzaro wrote:it's that I _dislike_ the perl5 rule, ...Oh. That's "dislike" rather than "disliked"? My question was predicated on your declaration "I emphatically withdraw my objection", which I took to mean that your knowledge of the infrared comma rule -- or whatever it's called -- meant you no longer disliked the Perl 5 syntax?
I don't loath the old C<map> syntax to the point where I'd just die if it were there. And I don't expect we'd really get rid of it, it's too intrinsic to Perl5. At very minimum, we'd have to keep the global functions around as a module you could load for Perl5-friendliness.
I do think OO & pipelines are the better, more generic way to do the same thing. So I'd really like to see pipelines, even if they're just in addition to the old C<map> style. After that, it's just a question of whether the old style is worth the redundant declarations, which is purely a matter-of-taste thing.
the most frequent mistake is to reverse the order of the arguments, saying map @a, {...}That happens if you conceptualize C<map> as taking two arguments.
I think you're right about that. And we have both:
for (@a) {...} and map {...} @a; Which stings some newbies repeatedly, poor lads.
On the contrary. I'm just so happy someone understood what I was trying to say, I think I'm going to burst into tears... Wait, no... OK, I'm better now.Was that an understandable explanation? :-)Yes. Thanks, again. Please don't take personally my disagreeing with so much you've written!
MikeL