in reply to Re: (jeffa) Re: Arrays
in thread How do I reset an array?

No deferrence going on here - &get_array() simple returns an array and not a reference (sub or array). Maybe this code will shed some light:
use strict; use Data::Dumper; print Dumper get_array(); print Dumper get_array_ref(); print Dumper scalar get_something(); print Dumper get_something(); sub get_array { return ('a'..'d'); } sub get_array_ref { return [('a'..'d')]; } sub get_something { return wantarray ? ('a'..'d') : 'scalar'; }
Also check out the difference between a list and an array

jeffa

L-LL-L--L-LL-L--L-LL-L--
-R--R-RR-R--R-RR-R--R-RR
B--B--B--B--B--B--B--B--
H---H---H---H---H---H---
(the triplet paradiddle with high-hat)

Replies are listed 'Best First'.
Re: (jeffa) 3Re: Arrays
by Jaspersan (Beadle) on May 07, 2002 at 00:14 UTC
    thanks, i appreciate all your help :)
    Im going to use all that info right now
    ^jasper <jasper@wintermarket.org>
Re: (jeffa) 3Re: Arrays
by dsheroh (Monsignor) on May 06, 2002 at 21:56 UTC
    I get (no pun intended) how the original get_array works. What I'm unclear on is why you called it with &get_array() instead of just get_array(). I'm used to seeing \& used when setting up references to subs, but this is the first time I've encountered &subname() without the backslash.
      Oh! /smack forehead :P

      I only did that because that's how Jaspersan called the function. Personally, i hate prefixing function calls with the ampersand unless i am taking a reference to them, as you can probably tell from the rest of the code i posted.

      However, tye has chastised me for this, and i understand why - because it distinguishes your functions from Perl's internal functions. Parens are not enough:

      print "Hello World!\n"; print("Hello World!\n"); &print("Hello World?\n"); sub print { print "yo!\n"; }

      jeffa

      L-LL-L--L-LL-L--L-LL-L--
      -R--R-RR-R--R-RR-R--R-RR
      B--B--B--B--B--B--B--B--
      H---H---H---H---H---H---
      (the triplet paradiddle with high-hat)