R. Kent Dybvig
dyb at cs.indiana.edu
Thu Jan 18 15:32:12 EST 2007
> >> Is it really worth having yet another kind of comment? I.e., is the
> >> tiny ambiguity #;r6rs (or #|r6rs|#, but I suspect the former is easier
> >> on the implementors) would carry really worth it?
> > Yes. #!r6rs and #!whatever are not comments.
> By the current spec #!r6rs *is* a comment. It seems its primary value
> would only come in if it distinguished R6RS from another language.
> But, as it's not mandatory, it can't do that reliably, unless the
> other language requires a marker such as #!r6rs.
The intent is that r7rs might add a #!r7rs marker, at which point reading
#!r6rs will be a side effect and cannot be considered merely a comment.
Saying it is merely a comment now thus seems inadvisable. Even with r6rs,
we have envisioned and may mention in an appendix a #!case-insensitive flag
that presumably would be neutralized by #!r6rs, so that #!r6rs would not
merely be a comment.
Also, I think it's inadvisable to suggest that #;whatever or
#|whatever|# be used for lexical syntax extension markers, since
these would truly be comments in systems that don't support them.
The advantage of #!whatever is that implementations can raise
exceptions for unsupported flags. If we're going to use the #!whatever
syntax for extensions, we should use #!r6rs for consistency.
More information about the R6RS