From: Peter G. <pe...@ar...> - 2005-09-29 10:24:46
|
On Thu, 29 Sep 2005 at 16:17:11 +1000, Luke Hope wrote: > I discovered abcl about a month ago. I want to use it primarily to > interface between java and lisp. To this end, I've spent about a week > writing up an automatic CLOS wrapper generator for java classes. I've > gotten it to the stage where I'm happy to release it. It passes most > (all?) of the pitfalls I could think of. > > Attached is the file "javaclass.lisp", which I'm releasing as GPL > (same licence exactly as abcl), and an accompanying README.txt. If > you want to incorporate this code into abcl, I'd be delighted. I'm glad to see that you've done this. My current idea for ABCL is that it should provide basically just the core functionality of a Common Lisp implementation, and enough hooks so that folks wanting to do FFI with Java can do so. I'd rather not include a CLOS wrapper generator for Java classes in ABCL itself at this point, since there are lots of ways one could implement such a thing, and particularly in the early stages, I'd like to encourage folks to experiment with different approaches. (We are definitely in the early stages.) > My only major erk for the program is that because it uses CLOS, and > methods aren't compiled under abcl, the wrappers it generates can be > quite slow. (insert sneaky feature request for ABCL here...) ABCL's CLOS is quite slow, but it's not because ABCL doesn't compile methods. ABCL does compile methods, to roughly the same extent that it compiles ordinary functions defined with DEFUN. There are a few Lisp constructs that ABCL's compiler isn't smart enough to compile yet, whether they're used in a method or used in a DEFUN. But yes, indeed, ABCL's CLOS needs lots of work. -Peter |