I think the R6RS did the right thing in allowing e.g. `(set! foo 10)' to
result in 0 values, and that R7RS did the wrong thing in reverting to
the R5RS "the result is unspecified". Some expressions just don't have
useful values, and forcing implementations to produce a value in that
case hides bugs, producing programs with less meaning.
Call-with-port not closing the port in exceptional situations is a
shame. As it is, the only thing you can do to close ports in
exceptional situations is to use dynamic-wind. Nasty.
_______________________________________________ Scheme-reports mailing list Scheme-reports@x http://lists.scheme-reports.org/cgi-bin/mailman/listinfo/scheme-reports