Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change

Re: Non-destructive array processing

by runrig (Abbot)
on Jan 20, 2003 at 23:34 UTC ( #228523=note: print w/ replies, xml ) Need Help??

in reply to Non-destructive array processing

Nice trick. I like it as a sort of answer to LISP-like linked lists without having to resort to 2-element array references:

my @array = qw(a b c d); my $r = sub { \@_ }->(@array); my $a = cdr($r); print "arr: @array\n"; print "a: @$a\n"; print "r: @$r\n"; $array[2]="hello"; print "arr: @array\n"; print "a: @$a\n"; print "r: @$r\n"; sub cdr { my $r = shift; my $a = sub { \@_ }->(@$r); shift @$a; $a; }

Comment on Re: Non-destructive array processing
Download Code

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others about the Monastery: (4)
As of 2016-02-15 00:08 GMT
Find Nodes?
    Voting Booth?

    How many photographs, souvenirs, artworks, trophies or other decorative objects are displayed in your home?

    Results (471 votes), past polls