in reply to RFC: Is there more to alias?
Say I have an object, $heap. And say I want to store some really whopping huge strings in this heap. But $heap was not written to know about aliases and I don't want to add the overhead of putting references into the heap and telling it to use a dereferencing comparison function.
Is there much chance that I could use:
alias $heap->Push( $dna );
to acheive a heap of aliases? My understanding of your description says "no". Would it make sense to be able to copy an opcode tree and transform the copy like:
my $heapPush= aliasize $heap->can("Push"); $heapPush->( $heap, $dna );
(noting that routines called by $heapPush would still remain unaffected, perhaps unfortunately)
How would you go about retrofitting a module to support storing aliases instead of copies?
On a related note, compare these two bits of code:
my @x; sub swap { my( $i, $j )= @_; alias @x[$i,$j]= @x[$j,$i]; } sub exchange { my( $i, $j )= @_; alias do { my $t= $x[$i]; $x[$i]= $x[$j]; $x[$j]= $t; }; }
Do these cases work?
swap( 0, 1 ); exchange( 0, 1 ); swap( 0, 0 );
I expect I could work that out for myself but I don't want to expend the effort and I thought you might appreciate the opportunity. (:
BTW, smashing great idea for a module.
- tye
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^2: RFC: Is there more to alias? (cases)
by xmath (Hermit) on Aug 24, 2004 at 22:56 UTC |