[r6rs-discuss] Version reference ambiguity

AndrevanTonder andre at het.brown.edu
Tue Jun 12 10:19:17 EDT 2007


This is probably just a question of formulation, but on p.24 it is stated that
an empty <version reference> is equivalent to ().  This may be taken to mean 
that

   (not)

is allowed and is equivalent to (not ()), which would give #t.  It may also be 
taken to mean that

   (or)

is equivalent to (or ()), which would give #t instead of the expected #f.

I would suggest that the wording "empty" be dropped and instead that the syntax 
for library reference be stated as

   <library reference> ::= (<identifier1> <identifier2> ...)
                        |  (<identifier1> <identifier2> ... <version reference>)

One can then unambiguously state that the first variant is equivalent to

   (<identifier1> <identifier2> ... ())

Andre



More information about the r6rs-discuss mailing list