[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Kawa-commonlisp-dev] [GSoC] Status
From: |
Charles Turner |
Subject: |
Re: [Kawa-commonlisp-dev] [GSoC] Status |
Date: |
Thu, 09 Aug 2012 18:58:27 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:14.0) Gecko/20120714 Thunderbird/14.0 |
On 09/08/12 07:30, Jamison Hope wrote:
(module-static #t) should be the default, too, but check that. Do
javap gnu.commonlisp.lisp.primitives (or whatever) and make sure that
the ModuleMethods are public static. If they aren't, try adding
--module-static or --module-static-run to the compile args to see
if that changes anything.
The output of javap claimed the ModuleMethod's were public static. I
also tried compiling my primitives file with --module-static-run (just
in case), but I experience the same problem.
The order of the definitions in the file may matter, as well -- try
making sure that you don't have any uses before definitions.
What kind of errors are you seeing? (As you suspected, your repo doesn't
quite build for me at the moment.)
I've cleaned up the repository, it should build without any problems
now. I've tried to reduce the problem by commenting out most of the new
def*Fld's in CommonLisp, this is what I've noticed:
* With all the def*Fld's commented out, I would get warnings when
compiling the primitives.lisp files about LENGTH, GENSYM and SYMBOL-NAME
being unbound, this made sense because their call sites were before
their definitions (and hence the warnings would disappear compiling
again, if loadClass(primitives) is not commented out). Adding def*Fld's
for these three functions caused an error rather than a warning when
building the primitives from scratch:
primitives.lisp:152:23: exception loading 'COMMON-LISP:SYMBOL-NAME' - no
such class: gnu.commonlisp.lisp.primitives
[ and similar messages for the other two examples ]
* Once the primitives file is compiled and I use loadClass on it,
everything appears to work fine, the names are bound from the REPL, etc.
* If you remove the loadClass("gnu.commonlisp.lisp.primitives") line
after the primitives file has been compiled, no names appear to be bound
from the REPL, for example, assuming this is uncommented in CommonLisp:
defProcStFld("gensym", "gnu.commonlisp.lisp.primitives");
Then from the REPL I see:
#|kawa:1|# #'gensym
/dev/stdin:1:3: warning - no declaration seen for COMMON-LISP:GENSYM
/dev/stdin:1:3: unbound location
at gnu.kawa.reflect.FieldLocation.get(FieldLocation.java:200)
at gnu.kawa.reflect.FieldLocation.get(FieldLocation.java:188)
at gnu.mapping.PlainLocation.get(PlainLocation.java:21)
at gnu.mapping.SharedLocation.get(SharedLocation.java:21)
[ snipped ... ]
which is the same output as when the above defProcStFld(gensym..) is
commented out, so it appears to do nothing at the moment.
Thanks for the help,
Charles.
- [Kawa-commonlisp-dev] [GSoC] Status, Charles Turner, 2012/08/06
- Re: [Kawa-commonlisp-dev] [GSoC] Status, Jamison Hope, 2012/08/06
- Re: [Kawa-commonlisp-dev] [GSoC] Status, Charles Turner, 2012/08/06
- Re: [Kawa-commonlisp-dev] [GSoC] Status, Charles Turner, 2012/08/08
- Re: [Kawa-commonlisp-dev] [GSoC] Status, Jamison Hope, 2012/08/09
- Re: [Kawa-commonlisp-dev] [GSoC] Status,
Charles Turner <=
- Re: [Kawa-commonlisp-dev] [GSoC] Status, Jamison Hope, 2012/08/09
- Re: [Kawa-commonlisp-dev] [GSoC] Status, Jamison Hope, 2012/08/09
- Re: [Kawa-commonlisp-dev] [GSoC] Status, Charles Turner, 2012/08/09
- Re: [Kawa-commonlisp-dev] [GSoC] Status, Charles Turner, 2012/08/09
- Re: [Kawa-commonlisp-dev] [GSoC] Status, Jamison Hope, 2012/08/09
- Re: [Kawa-commonlisp-dev] [GSoC] Status, Charles Turner, 2012/08/10
- Re: [Kawa-commonlisp-dev] [GSoC] Status, Jamison Hope, 2012/08/10
- Re: [Kawa-commonlisp-dev] [GSoC] Status, Charles Turner, 2012/08/10
- Re: [Kawa-commonlisp-dev] [GSoC] Status, Jamison Hope, 2012/08/10
- Re: [Kawa-commonlisp-dev] [GSoC] Status, Helmut Eller, 2012/08/11