Re: Common Lisp solved this problem 20 years ago Alan Watson 26 Oct 2005 07:15 UTC
Per Bothner wrote: > Common Lisp allows a compiler to *assume* / is defined to the standard > / operation, unless there is a visible re-definition. > Kawa makes more-or-less the same assumpions. > I think that is a reasonable default mode for a compiler. Unless the compiler has the ability to see into the future, this assumption can be rather dangerous in an interactive system. Can you tell me where in the HyperSpec this behaviour is sanctioned? I had a quick look before posting my last message, but couldn't find it. If I recall correctly, one of the advances of Dylan over Common Lisp was that that Dylan modules export names and *values* not whereas Common Lisp packages export names. This helps the compiler reason about the value of imported procedures. Bigloo is able to do this too, I think. Regards, Alan -- Dr Alan Watson Centro de Radioastronomía y Astrofísica Universidad Astronómico Nacional de México