in reply to Re^3: getfile( $filename )
in thread getfile( $filename )

Why not my @result = map scalar(chomp, $_), <$FH>?

Jeff japhy Pinyan, P.L., P.M., P.O.D, X.S.: Perl, regex, and perl hacker
How can we ever be the sold short or the cheated, we who for every service have long ago been overpaid? ~~ Meister Eckhart

Replies are listed 'Best First'.
Re^5: getfile( $filename )
by merlyn (Sage) on Jul 29, 2005 at 16:10 UTC
    First, I wouldn't have expected scalar to take two arguments. True, modern perlfunc pages document this, but it's certainly unexpected to me.

    Second, I dislike modifying $_ in a map, because I believe a map to be applicative, not side-effect-ish.

    -- Randal L. Schwartz, Perl hacker
    Be sure to read my standard disclaimer if this is a reply.

Re^5: getfile( $filename )
by harleypig (Monk) on Jul 29, 2005 at 18:03 UTC
    I'm not sure how that works, but it seems like the map /(.*)/, <> is more perlish. Also, it's shorter.
    Harley J Pig
Re^5: getfile( $filename )
by greenFox (Vicar) on Aug 03, 2005 at 07:55 UTC

    Why not my @result = map scalar(chomp, $_), <$FH>?

    That use of scalar gives me the creeps! Isn't this equivalent and less obfuscated?

    my @result = map {chomp; $_} <$FH>;

    Update: or for that matter whats wrong with chomp(my @result = <$FH>);

    --
    Murray Barton
    Do not seek to follow in the footsteps of the wise. Seek what they sought. -Basho