[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: I DON'T BELIEVE IT!!!!!!!!!

I just talked with ALAN.  He implied the right way to do it in his
last note, but let me summarize:

1)  NIL is always ignored.  No change.
2)  (FOO) returned from a splicing macro is the same as just having typed
    FOO, at top level or inside a list.  The only change is in top-level READ
    it has to know to return FOO instead of reading it.  Also in the position
    after a . [his (A B . ~(C)) example].
3)  (FOO BAR) is just like FOO and BAR typed in without the ~ or parens.
    At top level and after a ., this should be an error.

This really is a small pertebation in the current behaviour, and will fix
both ALAN's and my complaints (being the same).  It completely subsumes any
need for macros to determine at run time whether or not they want to be
splicing.  It is simply a matter of making their behaviour consistant
at top-level.  Oddly enough, it probably means special-casing at the
top-level (and after a ".") but in an innocuous way.