[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: do-nothing macro generates nil nevertheless
- To: info-mcl@digitool.com
- Subject: Re: do-nothing macro generates nil nevertheless
- From: Erik Naggum <erik@naggum.no>
- Date: 27 Feb 1995 21:13:16 UT
- Organization: Naggum Software; +47 2295 0313
- References: <3iqno7$mab@news.internex.net>, <gat-260295131710@milo.jpl.nasa.gov>, <3irgmq$2bk@news.internex.net>
- Sender: owner-info-mcl@digitool.com
[Dave Yost]
| There should be a way to make a macro that can be as transparent as #+
| is when its symbol is not in *features*. That's what I should have
| said.
#+ as a reader function has very special provisions available, namely that
returning zero values "contributes nothing to the object being read".
(CLtL2 p 543). by the time you start to evaluate a macro, it is obviously
too late for a similar mechanism.
the compatibility note on page 543 also includes a note that MacLisp and
Interlisp had splicing macro characters that could splicing of arbitrarily
many values. I think I understand this, but maybe somebody can tell me why
was this capability removed from Common Lisp?
hmmm. what should reading (#.(values) #.(values 1) #.(values 1 2)) return?
gcl-1.1 says (NIL 1 1). CMUCL 17f says (1 1). WCL 2.2 says (1 1). CLISP
(version?) says (NIL 1 1).
#<Erik>
--
miracle of miracles. look what the Net dragged in.