[r6rs-discuss] "Unspecified"

From: Aubrey Jaffer <agj>
Date: Sun Sep 24 21:56:02 2006

 | From: William D Clinger <will_at_ccs.neu.edu>
 | Date: Fri, 22 Sep 2006 13:00:03 -0400
 |
 | I am posting this as an individual member of the Scheme
 | community. I am not speaking for the R6RS editors.
 |
 | ... 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 ...)))
 | ...)

Value-ignoring code can be made R5RS and R6RS-compatible using BEGIN:

    (let* ((v (f ...))
           (ignored (begin (vector-set! v i ...) #f))
           (v2 (g v ...)))
      ...)

I think the utility of erring on missing captured values outweighs the
bother of wrapping (begin ... #f) around ignored bindings.
Received on Sun Sep 24 2006 - 21:46:06 UTC

This archive was generated by hypermail 2.3.0 : Wed Oct 23 2024 - 09:15:01 UTC