[vox-tech] perl question - arrays and lists

Michael Wenk vox-tech@lists.lugod.org
Thu, 8 May 2003 19:35:30 -0700


On Thursday 08 May 2003 01:53 pm, Jay Strauss wrote:
> you need push @array, [$foo, $bar];

Here's a silly question, wouldn't: 

push @array, \($foo,$bar);  

work?  

Mike

>
> ----- 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
>
> _______________________________________________
> vox-tech mailing list
> vox-tech@lists.lugod.org
> http://lists.lugod.org/mailman/listinfo/vox-tech

-- 
wenk@praxis.homedns.org
Mike Wenk