[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Date: Wed, 25 May 88 18:19:33 PDT
From: firstname.lastname@example.org (Cris Perdue)
> Issues surrounding Symbol-Macrolet
> - Incompatible Language Change
Granted that symbol-macrolet affects the meaning of symbols
in expressions generally, and code walkers in particular. Code
walkers will indeed have to be modified to handle symbol macros.
The specter of misuse of of symbol-macros is a red herring. Lisp
already has plenty of power that can be misused to make programs
confusing or worse. The SETF concept and even the concept of
macros provide this level of power.
I have mixed feelings about SYMBOL-MACROLET myself. This prompts me
to propose NUMBER-MACROLET for the sake of contrast.
(number-macrolet ((6 '(a b c))
(list 6 '6 3.14159 '3.14159))
=> ((a b c) 6 2.71828 3.14159)
This would certainly encourage explicit quotation wherever appropriate
(which others have already advocated), and would provide a counterexample
to the adage "There's safety in numbers."