On Sun, Aug 30, 2009 at 12:13:59PM +0100, Neil Jerram wrote: > Mark H Weaver <m...@netris.org> writes: > > > This numbering has the nice properties that 0 is #f. > > Just to be clear: will this mean that (SCM_BOOL_F == 0) ? As things > stand I don't think it will, because SCM_MAKIFLAG shifts and adds > 0x04.
Yes, that's correct. SCM_BOOL_F is 4. What I should have said above is that #f is IFLAG number 0. > > Also, you may have noticed that I've been using the term "lisp" > > instead of "elisp". This is because guile may support other lisps in > > the future, and they will also need the same %nil handling. (For that > > matter, we could even use %nil to implement an "old scheme" language > > which treats '() as false.) With this in mind, should SCM_ELISP_NIL > > be renamed to SCM_LISP_NIL? > > Yes, that sounds like a good argument to me - i.e. I can't see any > reason why the special-case-ness of Elisp shouldn't apply equally to > other Lisps - so please do rename "ELISP" things to "LISP", where this > argument supports that. Sounds good! Mark