[armedbear-ticket] [armedbear] #54: pprint.lisp incompatible with gray-streams.lisp
armedbear
armedbear-devel at common-lisp.net
Thu Apr 16 19:08:33 UTC 2009
#54: pprint.lisp incompatible with gray-streams.lisp
------------------------+---------------------------------------------------
Reporter: ehuelsmann | Owner: somebody
Type: defect | Status: new
Priority: major | Milestone:
Component: other | Version:
Keywords: |
------------------------+---------------------------------------------------
pprint.lisp special-cases the XP-STRUCTURE argument type for the stream
argument specified to all the stream functions.
Although SBCL uses largely the same approach, it uses a (slightly)
different approach, which is important in the details. (Isn't that where
the devil usually is?)
The difference between ABCL and SBCL is that SBCL - although it uses
largely the same structure to store its pprinter values - this structure
extends the structure which is used to represent streams. In ABCL, this
structure is a structure by itself. To compensate for the fact that the
structure isn't recognised as a stream itself, all stream functions
special case the XP-STRUCTURE argument handling.
Proposed solution: make streams based on dispatch tables stored in
structures, just as SBCL does. This way, most of our streams "stuff" can
be implemented in Lisp, instead of Java. As a bonus, this issue can be
resolved along the same lines as SBCL does.
--
Ticket URL: <http://trac.common-lisp.net/armedbear/ticket/54>
armedbear <http://common-lisp.net/project/armedbear>
armedbear
More information about the armedbear-ticket
mailing list