Perl: the Markov chain saw PerlMonks

### Re^2: Is there any difference between prototype % and @ ?

by LanX (Chancellor)
 on Feb 22, 2013 at 14:12 UTC ( #1020169=note: print w/replies, xml ) Need Help??

> Hope that helps,

thanks, it does, though it was what I expected it helps to know the official truth...

> It doesn't even bother to check whether you have an even number of arguments.

which is - mildly expressed - "unfortunate". I will add a manual check.

Cheers Rolf

• Comment on Re^2: Is there any difference between prototype % and @ ?

Replies are listed 'Best First'.
Re^3: Is there any difference between prototype % and @ ?
by AnomalousMonk (Canon) on Feb 22, 2013 at 20:33 UTC
... an even number of arguments...
I will add a manual check.

What are you doing with the arguments subsumed under the  % prototype? Well, right now you're probably just writing test code to check the behavior of the prototype, but in a 'real world' case, would you not assign these arguments to a hash? What else? If assigning an odd number of elements to a hash, Perl warns (if warnings are enabled) with no separate check necessary. Granted, the warning doesn't stem from the prototype checking system, but...

>perl -wMstrict -le "sub H (&%) { my ($cr, %h) = @_;$cr->(%h); } ;; H { print @_; } qw(a 1 b); " Odd number of elements in hash assignment at -e line 1. Use of uninitialized value $_[3] in print at -e line 1. a1b not in this case, cause I want to have it as fast and memory saving as possible. thats why I'm splicing... though using indexes$_[\$i] should be even faster...

just check the post I linked in the OP

Cheers Rolf

not in this case, cause I want to have it as fast and memory saving as possible.

Then why create a list from the hash in the first place?

With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.

Create A New User
Node Status?
node history
Node Type: note [id://1020169]
help
Chatterbox?
 erix . o O( "what fools the french are, Jeeves" ) [choroba]: Also some Достое́вс кий [Discipulus]: mmh windows understand something like: cd c:\\\\path\\\\to weird..

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (9)
As of 2017-05-24 08:12 GMT
Sections?
Information?
Find Nodes?
Leftovers?
Voting Booth?
My favorite model of computation is ...

Results (183 votes). Check out past polls.