[R6RS] shall versus must

William D Clinger will at ccs.neu.edu
Wed Aug 30 15:42:13 EDT 2006

Kent wrote:
> I caught only the tail end of the "shall" versus "must" dicussion as I
> came on the line Tuesday (I think).  Can someone explain the rationale
> behind the universal change?  I seems more natural to me to use "must" for
> syntactic or input requirements, as in

I prefer "must" to "shall" myself, but (as I was
explaining to Mike) the word "must" is ambiguous
in that it can be interpreted as an informative
observation about the nature of reality or some
other standard, whereas the prissier "shall" is
distinctive enough to serve as a marker for
normative requirements.

For example, "Numbers that contain a decimal point
must be expressed using decimal digits" could be
misinterpreted to mean that the #\. character would
be a hexadecimal point, not a decimal point, if
hexadecimal digits such as #\a were used.  "Numbers
that contain a decimal point shall be expressed
using decimal digits" alerts the reader that what
is being stated is an obligation of some sort, not
just some casual observation.


More information about the R6RS mailing list