Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

Re^2: Help me decipher code containing map function

by shmem (Chancellor)
on Jun 11, 2017 at 12:17 UTC ( [id://1192525]=note: print w/replies, xml ) Need Help??


in reply to Re: Help me decipher code containing map function
in thread Help me decipher code containing map function

map { $val .= sprintf("%02x",$_) } unpack "CCCCCC", $octetstr;

Nice example for map in void context. I wouldn't transform that into a full foreach loop, but use a statement modifier instead

$val .= sprintf("%02x",$_) for unpack "CCCCCC", $octetstr;

for the same reasons I wrote down elsewhere.

But then - regarding map in void context - all perl statements are executed for their side effect, and the computed value is discarded:

# result from map is discarded # side effect: $val is populated map { $val .= sprintf("%02x",$_) } unpack "CCCCCC", $octetstr; # result from print is discarded (1 if successful) # side effect: text appears on STDOUT or selected filehandle print "hello, world!\n"; # result from assignment is 42, again discarded # side effect: $value is populated $value = 42; # result from die is discarded (if any), print not done # side effect: well... print die;
perl -le'print map{pack c,($-++?1:13)+ord}split//,ESEL'

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1192525]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others perusing the Monastery: (3)
As of 2024-10-09 03:19 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    The PerlMonks site front end has:





    Results (44 votes). Check out past polls.

    Notices?
    erzuuli‥ 🛈The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.