develooper Front page | perl.perl6.language | Postings from August 2006

Re: === and array-refs

Thread Previous | Thread Next
Mark J. Reed
August 17, 2006 11:41
Re: === and array-refs
Message ID:
On 8/17/06, David Green <> wrote:
> >    $a=[1, 2, \@x];
> >    $c=[1, 2, \@x];
> >    $d=[1, 2, \@y];
> >
> >So $a, $c, and $d may all have the same *value*
> >(or "snapshot", when evaluated all the way down
> >through nesting and references), i.e. they might
> >be eqv, but only $a and $c are === because they
> >have the same contents [unevaluated contents]
> >and $d doesn't.

In this case, it seems like [===] @$a, @$c would do what you want,
yes?  It would return true, while [===] @$a,@$d would return false...

In the general case - well, I think the thread demonstrates that it's
hard to define a general case for what you want to do.   Based on your
example, I assumed you wanted one-level dereferencing, regardless of
the contents. But it sounds like what you want is infinite
dereferencing as long as the referent is anonymous,  and no
dereferencing if the referent is a named variable?  That doesn't seem
like a common enough case to warrant sugar to me; what am I missing?

Mark J. Reed <>

Thread Previous | Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About