Tail-calls (was Re: Equality of Recursive Structures [Was:
Closure Compiler in 3.9 ?])
Lukas Renggli
renggli at gmail.com
Sat May 12 18:12:27 UTC 2007
> > aClass>>add: a with: b
> > self become: #zork.
> > ^ self add: a with: b+1
> >
> > aClass>>add: a with: b
> > self class removeSelector: #add:with:.
> > ^ self add: a with: b+1
>
> Neither of these are affected at all by removing the no-op frames,
> unless I'm missing something.
In both cases the receiver changes and so might the implementation of
#add:with:. Have a look at the other example I gave not using any of
the dirty tricks above, but just plain inheritance. The same problem
there ...
Cheers,
Lukas
--
Lukas Renggli
http://www.lukas-renggli.ch
More information about the Squeak-dev
mailing list
|