[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


       Date: Tue, 31 Jan 89 13:46:07 PDT
       From: William Clinger <will@fog.cs.uoregon.edu>

       I am uncomfortable with the proposed WITH-INPUT-FROM-PORT and
       WITH-OUTPUT-TO-PORT procedures.  One reason the R3RS did not specify a
       way to change the default ports is that some people do not want them to
       be changable.  Furthermore the implementation-dependent behavior of
       these new procedures is a serious problem because they muck with a
       global resource: the default ports....

    Date: Tue, 31 Jan 89 20:51:41 EST
    From: cph@murren.ai.mit.edu (Chris Hanson)

    This shouldn't be an issue.  The procedures `with-input-from-file' and
    `with-output-to-file' already do this kind of binding.  What we're
    suggesting isn't new functionality, but a subset of existing
    functionality: we want the binding part of `with-...-file' separately
    from the file-opening part.

Right.  I was confused.  But now that I'm not, I'm more concerned than
before.  WITH-INPUT-FROM-FILE and WITH-OUTPUT-TO-FILE are not essential,
precisely because they are not well-defined.  Historically, their presence
in R3RS at all was a grudging concession to MIT Scheme.  On the other hand,
CALL-WITH-INPUT-FILE and CALL-WITH-OUTPUT-FILE are well-defined and essential.
I do not see why IEEE Scheme should drop well-defined, essential procedures in
favor of ill-defined procedures that don't even appear in R3RS, even if the
new procedures resemble two non-essential and ill-defined R3RS procedures.

Peace, Will