[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Special form terminology
- To: Common-Lisp@SU-AI.ARPA
- Subject: Special form terminology
- From: David A. Moon <Moon@STONY-BROOK.SCRC.Symbolics.COM>
- Date: Wed, 22 May 85 22:19 EDT
- References: <850522182532.3.ACW@ROCKY-MOUNTAINS.SCRC.Symbolics.COM>
The following message may be of interest to you:
Date: Wed, 22 May 85 18:25 EDT
From: Allan C. Wechsler <acw@WAIKATO.SCRC.Symbolics.COM>
The line we have taken at Ed. Services is that macros are a subclass of
special operator. The taxonomic tree we have been using looks like
Functions Special Operators
Macros Primitive Special Operators (PSOs)
This way we have a name for each useful subdivision. Also, we need not
distinguish macros from PSOs when it suits us not to. I think that
whether a special operator is a PSO or a macro is often an
implementation detail, which we shouldn't have to document in case we
change our minds.
So when I teach DEFSTRUCT, for example, I say it's a special operator.
The students don't care whether it's primitive or not. They do care
that it does not have function semantics.