Subject: Re: When to recompile/reeval? From: Erik Naggum <erik@naggum.no> Date: 17 Oct 2002 21:49:44 +0000 Newsgroups: comp.lang.lisp Message-ID: <3243880184815830@naggum.no> * William Newman | Gack. That was a particularly depressing opening. | Thus I was particularly annoyed and provoked by Erik's comparisons to | CLISP and gcl above. In /addition/ to being egoistically concerned with your own feelings, how about also considering how annoyed and provoked I was when I noticed that SBCL had removed this crucial feature from CMUCL. I have come to rely on the interpreted behavior of macros in Allegro CL because I have | there seems to be the suggestion that SBCL has been backsliding away from | ANSI-specified behavior which supports incremental development. You know, I consider ANSI compliance the baseline. It is in my view quite irrelevant when arguing for a particular implementation over another. It would be like marketing books with "now conforming to standard spelling and grammar" on the cover. In other words, I do not look for compliance, I expect it, the same way I expect people to think and get annoyed when they do, instead of applauding them if they do like the touchy-feely guys. | So while SBCL may have ditched support for extras that Erik likes very | much ("crucial element", check) please do not go away with the impression | that we mess up ANSI-specified basics like being able the redefinition of | class instances mentioned above. I do not think there were any grounds to think that the annoyances of one implementation would be contagious just because it was juxtaposed to another implementation, so I do not believe anyone would go away with that impression, but had I known you were nervous about compliance, I would not have antagonized you on that aspect. As far as I am concerned, CMUCL (and hence SBCL, which I have only recently installed for fun) stands head and shoulders above the other no-cost alternatives. | Erik: You stand out from the crowd by being unusually smart, | knowledgeable, articulate, prominent, opinionated, and undiplomatic, but | you are by no means the first person to criticize SBCL for not supporting | a favorite allowed-by-ANSI extension or idiosyncrasy, and you probably | won't be the last. On my list of impressions that I want people to go away with are being unusually smart, knowledgeable, articulate, prominent, opinionated, and undiplomatic, but I have no intention of being remembered as the first or last person to criticize SBCL, so I mark that down as one success. :) | If I understand correctly, you want macro redefinition DWIM in interpreted | code, so that as long as you don't COMPILE-FILE or COMPILE, you don't | need to think about rebuilding the world from scratch when you redefine a | macro. Precisely. | That does sound like handy behavior, and it's certainly deliciously dynamic. Great that we see this the same way. | If there were a clean and simple way to make it happen, we might well do it. Very good! If you find that it is easier to keep a record of compiled functions that used a particular macro and report this upon redefinition of the macro in a way that could be used to recompile functions as needed, that would be even better because it would allow for automated tools to create patches and would influence the system-building features. | Also, I suspect that you may be writing from incomplete knowledge [...] I started to learn Common Lisp for real (after on-and-off use and toying for at least a decade) in 1994 with CMUCL, but got my hands on Allegro CL and found that it was really remarkably different and so much better than CMUCL for software development. I have stayed with it since, thanks in large part to the great people at Franz Inc. -- Erik Naggum, Oslo, Norway http://www.beltwaybuzz.com/Story%20Four.htm Act from reason, and failure makes you rethink and study harder. Act from faith, and failure makes you blame someone and push harder.