Subject: Re: #;
From: (Rob Warnock)
Date: Mon, 31 Dec 2007 03:01:49 -0600
Newsgroups: comp.lang.lisp
Message-ID: <>
Kaz Kylheku  <> wrote:
| > I have seen many examples using #+nil for this
| That and #+IGNORE will break if someone adds IGNORE or NIL to
| What will not break is #+(or).  This actually has the meaning of
| ignoring the following expression no matter what.

I actually prefer Erik Naggum's suggestion of #-(and) for that,
since the minus implies "turn it off" to me more than #+(or)
[which just feels "backwards"]. That also lets you change only
one character to turn it back on with #+(and), and again the
plus implies "on" to me [rather than using #-(or) for "on"].

But for some time now I've been using an even simpler pair,
namely, #+- to turn a form "off" [mnemonic: "from on to off"
or a "falling edge"] and #-+ to turn a form "on" [mnemonic:
"from off to on" or a "rising edge"], e.g.:

    > (list 1 2 #+- 3 4 #-+ 5 6)

    (1 2 4 5 6)

This will work provided no-one ever puts :+ or :- onto *features*,
which is highly unlikely. (IMHO.)


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