[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Misfeature: macros expanding into declarations
It is probably not worthwhile to argue over whether the macro expansion
misfeature makes life MUCH harder or just somewhat harder for
implementors and macro-writers, and how kind we want to be to "wimpy"
implementors. I am curious to find out if the people who think this is
not very hard have really handled the problem correctly; after several
iterations on the Spice Lisp interpreter and assorted macros, we've
still got some problems, so it doesn't look easy to us.
The fact remains that this misfeature slows down the interpreter and it
has been the source of a steady stream of bugs. The people responsible
for these bugs include assorted users trying to write macros and some
fairly experienced Common Lisp implementors (including me). Given that,
I still think that if nobody comes forward with a better argument for
this stuff than the examples we've seen so far, it should be flushed.
To let something this hairy into the language just because it is "not
without some utility" was a serious mistake, and one that we can correct
now with very little impact on existing code.