#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
#49: Support loading of compiled functions off byte arrays
-------------------------+--------------------------------------------------
Reporter: ehuelsmann | Owner: somebody
Type: enhancement | Status: new
Priority: major | Milestone:
Component: other | Version:
Keywords: |
-------------------------+--------------------------------------------------
loadCompiledFunction() in Lisp.java loads bytes out of a file, then loads
the "class-bytes" off the resulting byte array. The result being a loaded
class.
The goal of this issue is to expose this interface in order to eliminate
the need for the compiler to write compiled functions out to files before
loading them into the JVM.
--
Ticket URL: <http://127.0.0.1:8000/armedbear/ticket/49>
armedbear <http://common-lisp.net/project/armedbear>
armedbear
#40: Non-constant function-argument initforms
------------------------+---------------------------------------------------
Reporter: ehuelsmann | Owner: ehuelsmann
Type: defect | Status: new
Priority: major | Milestone:
Component: compiler | Version:
Keywords: |
------------------------+---------------------------------------------------
The compiler doesn't support non-constant initforms for compiled
functions. One way to work around this would be to take advantage of the
existing processArgs() functionality in Closure.java. It's used by the
interpreter to evaluate non-constant initforms.
In order to re-use the functionality, the compiler would need to create an
Environment object and set it up with the variables used in the initforms
for the interpreter to access.
This can be done by removing the CompiledClosure wrapper around
ClosureTemplateFunction. The ClosureTemplateFunction should support being
.execute()-ed directly (instead of through the wrapper). The compiler
should then set a context record (array of LispObjects) currently carried
around in CompiledClosure directly in ClosureTemplateFunction. The
Environment object should be used to set the 'environment' field in
ClosureTemplateFunction.
--
Ticket URL: <http://127.0.0.1:8000/armedbear/ticket/40>
armedbear <http://common-lisp.net/project/armedbear>
armedbear
#37: The Lisp based build system should be aligned with build.xml
------------------------+---------------------------------------------------
Reporter: mevenson | Owner: mevenson
Type: defect | Status: new
Priority: major | Milestone: 0.13
Component: component1 | Version: 1.0
Keywords: |
------------------------+---------------------------------------------------
The Lisp based build system need some serious love to align with
'build.xml'.
This should be available for abcl-0.13.0
--
Ticket URL: <http://127.0.0.1:8000/armedbear/ticket/37>
armedbear <http://common-lisp.net/project/armedbear>
armedbear