[vox-tech] perl question - arrays and lists

Jay Strauss vox-tech@lists.lugod.org
Thu, 8 May 2003 15:53:59 -0500


you need push @array, [$foo, $bar];

----- Original Message ----- 
From: "Peter Jay Salzman" <p@dirac.org>
To: <vox-tech@lists.lugod.org>
Sent: Thursday, May 08, 2003 3:12 PM
Subject: [vox-tech] perl question - arrays and lists


> there's some code i wrote that does something like:
> 
> sub blah()
> {
>    foreach (@foobar)
>    {
>       push @array, ($foo, $bar);
>    }
>    
>    return @array;
> }
> 
> so i'm returning an array whose elements are each a list of two items.
> the receiving code is something like:
> 
>    my @barfoo = blah();
> 
> what i've found is that @barfoo is no longer an array of lists.  the
> lists appear to be "flattened out".
> 
> so in the previous example, if there's one element of @foobar and $foo
> is "hello" and $bar is "dolly", then what i see is:
> 
>    $barfoo[0] is "hello";
>    $barfoo[1] is "dolly";
> 
> when what i really want is;
> 
>    $barfoo[0] = ("hello", "dolly");
> 
> i know that arrays can hold lists, but i must not be doing it correctly.
> do i need to do this with references?
> 
> pete
> 
> -- 
> GPG Instructions: http://www.dirac.org/linux/gpg
> GPG Fingerprint: B9F1 6CF3 47C4 7CD8 D33E 70A9 A3B9 1945 67EA 951D
> _______________________________________________
> vox-tech mailing list
> vox-tech@lists.lugod.org
> http://lists.lugod.org/mailman/listinfo/vox-tech
> 
>