Re: Formal spec; implementation; nesting
Bradd W. Szonye 11 Jan 2005 21:19 UTC
Alpert Herb Petrofsky wrote:
> I think what you're missing in your comparison of ' and #; is this:
>
> ' consumes one sexp and produces one sexp. The resulting sexp can
> then be used as the argument of another '. In contrast, #; consumes
> one sexp and produces zero sexps. The resulting nothingness cannot be
> used as the argument to another #; because nothing is not a sexp.
Note that I don't feel strongly about this issue. On the one hand, the
behavior you describe is the way most existing implementations work, and
there's value in standardizing that. On the other hand, that behavior
seems counterintuitive and not very useful.
Here's a model that explains my intuition: #; consumes one sexp and
produces one sexp which disappears late in the reading phase. That is,
#;#;FOO is equivalent to (COMMENT (COMMENT FOO)) during parsing, but the
sexp vanishes upon creation of the syntax tree.
--
Bradd W. Szonye
http://www.szonye.com/bradd