[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Elisp development news
From: |
Neil Jerram |
Subject: |
Re: Elisp development news |
Date: |
09 Jan 2002 20:33:35 +0000 |
User-agent: |
Gnus/5.0808 (Gnus v5.8.8) Emacs/20.7 |
>>>>> "Marius" == Marius Vollmer <address@hidden> writes:
Marius> Neil Jerram <address@hidden> writes:
>> I don't see why it's useful for the Elisp nil value to satisfy
>> Scheme's `symbol?'.
Marius> What about
Marius> (setq big-rivers '(amazonas nil ruhr))
What about it? :-) This is Elisp code. Obviously we have to make
sure that all Elisp code executes as expected, which includes this
expression and the fact that (symbolp nil) => t. But it has no
relevance a priori to how Scheme sees the Elisp nil value.
Marius> Beyond it's uses a the empty list and the false value, nil is also a
Marius> symbol and both sides need to recognize it as such.
Actually, the nil value can't be a Scheme symbol, at least not the one
with name `nil'. If it was, unsuspecting Scheme code could be tricked
up by this:
(if 'nil #t #f)
=> #t ; R5RS
=> #f ; Guile, if 'nil evaluates to the Elisp nil value
IMO this would be an unacceptable violation of R5RS.
Regards,
Neil