[cl-plus-ssl-devel] trivial-gray-streams becomes a separate project

David Lichteblau david at lichteblau.com
Fri Jun 24 16:18:34 UTC 2011


Quoting Chun Tian (binghe) (binghe.lisp at gmail.com):
> The MCL support code was written by Terje Norderhaug with my little
> modifications, it's partly confirmed by my own projects which depend on
> trivial-gray-streams and running on MCL;  the SCL support code is from IOlib
> project, untested (because I don't have a valid license), but I believe it
> should work, at least no harm to other platforms.

Cool, thanks.  Quick feedback:

It looks to me like many definitions are recursive, i.e. the gray
streams methods call MCL internals, which call gray steams methods.

trivial-gray-streams does not attempt to offer user code the ability to
call low-level STREAM-foo functions.  Rather, it aims to allows stream
implementors to define STREAM-foo methods such that the CL stream system
will end up calling that implementation.

I.e. the method CCL:STREAM-POSITION seems correct in calling
STREAM-FILE-POSITION, but the reverse method on STREAM-FILE-POSITION
that calls CCL:STREAM-POSITION is meaningless and should either say
  (error "not implemented")
or the method could be left out entirely, leaving it to the Lisp to
signal the condition that no method is applicable.

(If I'm reading the code right.)


d.




More information about the cl-plus-ssl-devel mailing list