[r6rs-discuss] "Unspecified"

David Cuthbert dacut at kanga.org
Thu Sep 21 22:52:04 EDT 2006


Anton van Straaten wrote:
> When you write (if b x) in a program, you haven't specified what should 
> be returned if b is false.  The value of the expression in that 
> situation is unspecified.

This sentence is confusing.  The value of the expression is specified by 
the standard.  A conforming implementation cannot return #f in this 
situation (or null, or "", or ...).

 > The perpetrator of the unspecified behavior
> is not the R6RS draft, but rather the program(mer).  The R6RS draft 
> simply specifies that in such situations, implementations must return a 
> value which denotes that no value was specified.

Reading this makes me biased for changing the terminology.  Many readers 
will subconciously parse "unspecified" as "implementation-defined"; it 
will take a fair amount of mental gymnastics (for me, at least) to parse 
it as "the value when no value was specified."




More information about the r6rs-discuss mailing list