Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical
 
PerlMonks  

Re: HASH value as a subroutine call

by Perlbotics (Canon)
on Oct 21, 2012 at 10:49 UTC ( #1000199=note: print w/ replies, xml ) Need Help??


in reply to HASH value as a subroutine call

You need to populate the hash with code-references (\&sub).

Try:

use strict; # my $code_ref = {'SUM', 'sum'}; my $code_ref = {'SUM', \&sum}; sub sum($$){...} # do you really need ($$) ? That is rarely useful. # ($codes->{'SUM'})->(4,5); # $codes? You mean $code_ref? $code_ref->{'SUM'}->(4,5);


Comment on Re: HASH value as a subroutine call
Download Code
Re^2: HASH value as a subroutine call
by AnomalousMonk (Abbot) on Oct 21, 2012 at 11:46 UTC
    sub sum($$){...} # do you really need ($$) ? That is rarely useful.

    Rarely useful, often misused, and in this case (in which prototypes are not checked at all) totally useless. E.g.:

    >perl -wMstrict -le "sub sum ($$); ;; my $codes = { 'SOFT' => 'sum', 'HARD' => \&sum, }; ;; $codes->{HARD}->('HARD', 1, 2, 3, 4); ;; { no strict 'refs'; $codes->{SOFT}->('SOFT', 9, 8, 7, 6); } ;; sub sum ($$) { print qq{(@_) arguments: }, scalar @_; } " (HARD 1 2 3 4) arguments: 5 (SOFT 9 8 7 6) arguments: 5

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (5)
As of 2015-07-05 14:26 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (67 votes), past polls