Andy Wingo wrote:
Yes and no; R5RS has this to say:
If the value of an expression is said to be "unspecified," then the
expression must evaluate to some object without signalling an error,
but the value depends on the implementation; this report explicitly
does not say what value should be returned.
In practice, in all situations in which R5RS defines a result as
unspecified, those values will be `eq?' to `(if #f #f)'.
For Guile, yes. But an R5RS conforming Scheme might well return a
unique value for every expression whose value is unspecified. (display
"unspecified") might return 5, or "unspecified", or a pink and white
unicorn whale. But Guile is kind to us, and always returns the same
value as is returned by (if #f #f), namely, *unspecified*.
I know you already know all this, Andy. I'm just running my mouth off.
Regards,
Jon