Subject: Re: Non-Lisp "macro" system closest to Common Lisp's?
From: (Rob Warnock)
Date: Sun, 26 Oct 2003 02:34:46 -0600
Newsgroups: comp.lang.lisp
Message-ID: <>
Peter Seibel  <> wrote:
| So I'm trying to place Lisp macros in some context relative to other
| things that go by the name of "macros". Obvious examples I can think
| of are:
|   - macro assembers

I have commented on this several times before[1], but the ancient
PDP-10 assembler named "MACRO-10" really *deserved* its name! Its
macro system allowed you to do all manner of compile-time computation
[though not quite as much as Lisp's, since you couldn't read/write
files other than to "include" them], including accumulating state
through the course of a compilation [in compile-time variables] and
planting the result as data or code objects at the end. When I first
started using DEFMACRO [2] after years of suffering with C's so-called
"macros" my first thought was: "Wow! A macro system better than MACRO-10!"

Note: BLISS macros weren't bad, either, but weren't nearly as rich as
MACRO-10's. BLISS "structures", on the other hand, were quite interesting:
Imagine a kind of macro that tells the compiler how to interpret array
references, so that "A[I,J,K] := .A[I,J,K] + 17" might actually be a
database update!


[1] <URL:>

[2] O.k., so it was in a Scheme (Jaffer's SCM), but it was still DEFMACRO.

Rob Warnock			<>
627 26th Avenue			<URL:>
San Mateo, CA 94403		(650)572-2607