Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
PerlMonks  

Re: using a hash of functions

by merlyn (Sage)
on Sep 27, 2000 at 19:52 UTC ( #34226=note: print w/replies, xml ) Need Help??


in reply to using a hash of functions

The canonical form of a subroutine invocation is:
$result = & { something_that_returns_coderef } ( @args );
The braces around the coderef expression can be dropped only when the coderef is in a simple scalar variable. Yours was not. So you'd have to use:
& { $functions{$func} }();
However, as of fairly recent Perls, you can also use an arrow form:
$functions{$func}->();
This was added by Chip in 5.4 under some urging by me based on a bet I made that I couldn't get a new feature into 5.4 during the gamma golden release phase. I won. {grin}

-- Randal L. Schwartz, Perl hacker


update: for more details, check out my Linux magazine column on subroutine references, and an older column from UnixReview.

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (6)
As of 2018-10-19 13:52 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    When I need money for a bigger acquisition, I usually ...














    Results (107 votes). Check out past polls.

    Notices?