[r6rs-discuss] "Unspecified"
I am posting this as an individual member of the Scheme
community. I am not speaking for the R6RS editors.
Jonathan Rees quoting Jason Orendorff:
> > Does anyone else feel a little weird about the phrase "the
> > unspecified value"?
>
> I do. This feature of the R6RS draft is an oxymoron and offensive to
> common sense.
That's what I like about it. It looks to me as
though the project editor might have been making
a wry comment on the futility of specifying things
that, in a more rational world, wouldn't need to
be specified.
Perhaps "the specific value formerly known as
unspecified" would be better.
Seriously, there are about four distinct issues here.
The most important issue is whether it is truly
necessary to specify the value returned by the
procedures that, in the current draft, are required
to return the unspecified value. Speaking only for
myself, the most compelling reason has been the
propensity of programmers to return zero values,
and of SRFI authors to advocate the return of zero
values, out of ignorance or disregard for the fact
that, in the R5RS semantics, portable code cannot
return zero values to continuations that weren't
created by call-with-values. This problem could
have been solved by requiring continuations that
expect a single value to coerce zero values into
an unspecified value, or into some specific value
(e.g. the oxymoronic unspecified value), but the
editors decided not to require that. They did
require certain contexts that, in an intuitive
sense, should ignore their values, to ignore their
values in fact, but that partial solution does not
solve the problem for other R5RS-compatible code,
e.g.
(let* ((v (f ...))
(ignored (vector-set! v i ...))
(v2 (g v ...)))
...)
Another issue, if there is going to be a specific
unspecified value, is the name of the procedure
that returns it.
Another issue might be its external representation,
were it to have one (and I think it should if it
exists).
Finally, there is the editorial question of how the
R6RS should refer to the creature, assuming it exists.
I look forward to seeing a consensus emerge from our
communal discussion of the above four issues.
Will
Received on Fri Sep 22 2006 - 13:00:03 UTC
This archive was generated by hypermail 2.3.0
: Wed Oct 23 2024 - 09:15:01 UTC