This site is a static rendering of the Trac instance that was used by R7RS-WG1 for its work on R7RS-small (PDF), which was ratified in 2013. For more information, see Home.
Do we support SRFI-6 string ports, reaffirmed by R6RS?
Do we support the with- and call-with- utilities?
cowan
2010-03-01 10:02:14
"Reaffirmed" is a little misleading. SRFI 6 ports are created by OPEN-INPUT-STRING and OPEN-OUTPUT-STRING, and GET-OUTPUT-STRING extracts the text accumulated in an output port as a string. In R6RS, we have OPEN-STRING-INPUT-PORT and OPEN-STRING-OUTPUT-PORT, where the latter returns both the port and the anonymous extractor.
SRFI 6 is supported (according to the documentation) by PLT, Gauche, MIT, Gambit, Chicken, Bigloo, Scheme48/scsh, Guile, Kawa, SISC, STklos, RScheme, s7, SXM, Pocket, stk, and Sizzle, plus the R6RS implementations IronScheme, Ikarus, Larceny, and Mosh. Only SCM, SigScheme, and Scheme 9, plus the R6RS implementation Ypsilon, lack support for it.
Neither interface seems to me superior to the other, but I recommend we go with SRFI-6 because of its near-ubiquity.
cowan
2010-10-18 02:52:29
milestone␣␣
resolution␣fixed
statusnewclosed
The WG voted to accept SRFI-6 string ports as part of the core.
"Reaffirmed" is a little misleading. SRFI 6 ports are created by OPEN-INPUT-STRING and OPEN-OUTPUT-STRING, and GET-OUTPUT-STRING extracts the text accumulated in an output port as a string. In R6RS, we have OPEN-STRING-INPUT-PORT and OPEN-STRING-OUTPUT-PORT, where the latter returns both the port and the anonymous extractor.
SRFI 6 is supported (according to the documentation) by PLT, Gauche, MIT, Gambit, Chicken, Bigloo, Scheme48/scsh, Guile, Kawa, SISC, STklos, RScheme, s7, SXM, Pocket, stk, and Sizzle, plus the R6RS implementations IronScheme, Ikarus, Larceny, and Mosh. Only SCM, SigScheme, and Scheme 9, plus the R6RS implementation Ypsilon, lack support for it.
Neither interface seems to me superior to the other, but I recommend we go with SRFI-6 because of its near-ubiquity.