Peter Makholm <peter@makholm.net> writes:
> damien krotkine <dkrotkine@gmail.com> writes:
>
>> I'm using this code to get a list of only the odd elements of an
>> array. The resulting list must have the same order as the array.
>>
>> map { state $f; ($_) x (++$f%2) } @array;
Wow, you asked for golfing advice in the subject and a nice solution in
the actual text. Those requirements are quite often very incompatible.
> If you want only to get some elements of a list is is much more obvious
> to use grep instead of map:
>
> grep { ++$f%2 } @array
This is probably as nice as it gets. For strictness I would just declare
$f as a lexical variable just outside the grep. But asking for golfing
advice is not compliant with strictness or niceness.
> And remove unneeded syntax
>
> grep$|--,@array
I think this would be the golfing solution, but as with everything alse
related to perl golfing don't use it in production code.
//Makholm
Thread Previous
|
Thread Next