[R6RS] #!r6rs

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 mailing list