[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Macros

I have been following this over CRD's shoulder (quite literally,
and to his consternation).  Having had exactly this debate
with Friedman while at the Lisp conference, I have some idea
what is going on here..

It is possible to implement "reduction languages" via meta-rules
of the form "see if this thing is reducible, if so reduce it,
and keep doing this until its not".  These things are really
interesting.  I have a toy implementation (dating from 1973
when I heard Backus lecture on the subject) in MacLisp on
Multics, if anybody cares, of Backus' "RED1".

I \believe/ this is the kind of thing that Friedman is hinting at:
Lisp macro processing is exactly this kind of language.  From
my viewpoint, attempting to implement such a hack via
Lisp macros is "cute", but kind of like Johnson's old saw
about teaching bears to dance; If I did such a thing, I might
show, say, ALAN, but not publicize it or let anyone else 
know I had done it. It is clearly WRONG, a gross misuse of
Lisp macros and their features, and in terms of showing
the power of anything, something that better not be shown.