Greetings,

I worked hard on a project to link ABCL with a very large Java application.  Although the addition of ABCL to that project failed, the work I did could be of use, and with some effort could be made to solve the problem I had.  I believe the original problem I had would be a very common problem in similar circumstances.

My pre-existing Java application has almost 10,000 classes!  I wasn't about to create lisp cover functions for each java method.  I also wasn't going to use a convoluted syntax to get to java each time.

What I did was create some Java and Lisp code that, through reflection, caused the system to auto-generate a complete set of CLOS classes to mirror my primary java application classes - including the class hierarchy.  The methods in these CLOS classes would call the Java methods.  With this, when in Lisp, I could just use all of my Java classes and methods as regular CLOS classes and methods.  It's use of Java classes and methods internally was transparent to lisp.  All of this worked fine.

The problem I ran into was the fact that Java can have several methods with the same name but different arguments.  So, the Java method being called depended on the types and number of arguments too (not just the class of the instance and the method name).  I never solved this, although I think it could be.  I just ran out of time and steam, as well as other non-technical reasons.

The reason I bring this all up now is because I am unclear about what problems Ralph is trying to solve.  I thought what I have done may be of use.

Thanks.

Blake McBride