kawa-commonlisp-dev
[Top][All Lists]
Advanced

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

Re: [Kawa-commonlisp-dev] [GSoC] Status


From: Jamison Hope
Subject: Re: [Kawa-commonlisp-dev] [GSoC] Status
Date: Thu, 9 Aug 2012 02:30:17 -0400

On Aug 8, 2012, at 2:42 PM, Charles Turner wrote:

On 6 August 2012 21:53, Jamison Hope <address@hidden> wrote:
Does that loadClass line need to be there at all, or could we just have
some lines like defSntxStFld("destructuring-bind",
"gnu.commonlisp.lisp.defmacro");
instead?

My understanding of how those things work is this:
- loadClass() immediately loads everything in the file
- def*Fld() doesn't load anything yet, it just lazily says where to find the
function/macro later; it gets loaded as if by
(import (only (class name) function-name))
the first time the function is referenced.

I'm not having much success with this. I've uploaded my latest changes
to my repository (it probably won't build, and it does, not symbols
will be accessible...). Does the def*Fld stuff rely on names being
module-export'd? That's the only difference I see much significance in
between the CL and Scheme libraries. The files I'm concentrating on
are:

gnu/commonlisp/lang/CommonLisp.java
gnu/commonlisp/lisp/*.lisp ; files from which I am trying to def*Fld

The def*StFld stuff relies on the named fields being public and static.

module-export causes the named definitions to be public (and all others
private), but the default when there's no module-export declaration is
for all definitions to be public. So you should be OK there.

(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 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.)

--
Jamison Hope
The PTR Group
www.theptrgroup.com






reply via email to

[Prev in Thread] Current Thread [Next in Thread]