leppie scripsit: > The closest notion I can see is that, for some reason, the code could > possibly be transformed into: > > (eqv? (lambda (x) (+ x 1)) (lambda (x) (+ x 1)))
What is more, an implementation is free to notice that these two lambdas are operationally equivalent and return #t! > which IMO, is a wasted optimization in the case where the procedure is > not applied. I think the purpose of it is for systems that inline known procedures: if you always rewrite (car x) as (%internal-car x), where %internal-car is not a value, then it may not be worthwhile keeping around an object to represent car for those cases when it is not being invoked. If anyone actually exploits this R6RS innovation, I still hope to hear of it. -- "But I am the real Strider, fortunately," John Cowan he said, looking down at them with his face co...@ccil.org softened by a sudden smile. "I am Aragorn son http://www.ccil.org/~cowan of Arathorn, and if by life or death I can save you, I will." --LotR Book I Chapter 10 _______________________________________________ r6rs-discuss mailing list r6rs-discuss@lists.r6rs.org http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss