[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
#, read macro
- To: Christopher Maeda <email@example.com>
- Subject: #, read macro
- From: Barry Margolin <barmar@Think.COM>
- Date: Mon, 20 Jun 88 13:03 EDT
- Cc: firstname.lastname@example.org, email@example.com, firstname.lastname@example.org, email@example.com
- In-reply-to: <19880620065222.1.MAEDA@PELE.ACA.MCC.COM>
- Supersedes: <19880620170243.2.BARMAR@OCCAM.THINK.COM>
Date: Mon, 20 Jun 88 01:52 CDT
From: Christopher Maeda <firstname.lastname@example.org>
We are implementing a frame system where each frame is a defstruct. We
use a reader macro to reference case sensitive frame names, permitting
the frame namespace to be disjoint from the symbol namespace. The
reader macro also lets us hook into a completion package that is very
handy for longer names.
I would be interested in hearing what alternatives the cleanup committee
is considering. Being able to dispatch to an arbitrary read function is
hard to beat.
No one is talking about removing reader macros in general. We are
considering removing the "#," reader macro. "#," is a relatively
obscure cousin of "#."; it causes the form following it to be
evaluated at load time rather than at read time as "#." does.
To see how it currently works, put the following definition in a file:
(defun sharp-comma-example ()
Compile the file, type (setq *sharp-comma-var* 'a), then load the binary
file. Then type (setq *sharp-comma-var* 'b) and (sharp-comma-example).
It should return A.