Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl Monk, Perl Meditation

Re: syntax error with map in list context

by davidrw (Prior)
on Nov 20, 2005 at 12:48 UTC ( #510241=note: print w/replies, xml ) Need Help??

in reply to syntax error with map in list context

Hmm.. interesting.. Played with a bit, and found that this works:
my %data=map { +"Player number $_", [ map { 1 + int rand(10) } 1 .. 5 ] } 1 .. 10;
I'm can't explain why, but hopefully someone will help clarify.. must be related to evaluation order or something like that.

Two side comments .. This does (nearly) the same thing:
my %data=map { $_ => [ map { 1 + int rand(10) } 1 .. 5 ] } 1 .. 10;
First change is using => instead of a comma -- this makes it more obvious to the reader that you're constructing key-value pairs. Second is just making the key be the player number -- this might be useful to you later in the code, and then you can include the text "Player number" only when you're actually print'ing out the data later.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://510241]
and the sunlight beams...

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (7)
As of 2017-02-27 16:49 GMT
Find Nodes?
    Voting Booth?
    Before electricity was invented, what was the Electric Eel called?

    Results (389 votes). Check out past polls.