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

Re: push to a referenced array

by moritz (Cardinal)
on Sep 27, 2008 at 20:21 UTC ( #714056=note: print w/replies, xml ) Need Help??


in reply to push to a referenced array

Is there any advantage over push @{$a->{ARRAY}}, "some", "list";? I for one can't see any...

Replies are listed 'Best First'.
Re^2: push to a referenced array
by biga (Sexton) on Sep 28, 2008 at 07:09 UTC
    Looks like the only benefit of this function is that you can omit surrounding @{}, which makes code cleaner. You may also add a ref check to this function for debug purposes.

      Hiding implentation details by writing tiny functions instead of just using references the way everybody else does rarely makes code cleaner. This is doubly true when the function you replace it with is obfuscated.

      If you really need a golf function to do it though, it can be made shorter...

      sub ref_push{push@{$_[0]||=[]},@_[1..$#_]}

      www.jasonkohles.com
      We're not surrounded, we're in a target-rich environment!
        Thank you for advice, guys. You've helped me a lot. %)
      ... but you have to write a wrapper for every built-in list function.

      To me it feels more like this function would be used by people not confident with references and autovivification, in which case I recommend reading perldata and perlreftut instead of writing wrappers.

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others wandering the Monastery: (1)
As of 2022-07-06 00:12 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found

    Notices?