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

output streams vs output ports

This page is part of the web mail archives of SRFI 68 from before July 7th, 2015. The new archives for SRFI 68 contain all messages, not just those from before July 7th, 2015.

While I understand the utility of input streams and the rationale for
having a separate input port abstraction on top of them, I just noticed
that I can't find any rationale described in the document for why there
are separate output stream & output port facilities, which are both
imperative; indeed, the reference implementation of output ports is
absolutely nothing more than a few extremely thin wrappers over output
streams, not even with the added functionality of acting like a cell or
anything as with input streams & input ports.  Is there a good reason
for having both output streams & output ports?  Was the distinction
perhaps a vestigial one from SML's I/O system (which I haven't
investigated thoroughly)?