Hi alessio,
All you say it's correct.
Babylon was developed in 90's using MCL (Machintosh Common Lisp) but an internal readme says that it is portable to another lisp implementations: MCL, Allegro, CLisp, CMU, AKCL.... That is why I try to use jlinker with allegro or Jacol with CLisp, but always, people says "try working with ABCL because there are a big community and working...." and is a very powerfull tool to translate lisp to java. The documentation of Jacol or jlinker is very poor. It's suppose that Babylon it's only work on MAC, but there are a light version to work with SUN, and this is the version that I'm trying to compile and this is why I'm trying to add a java interface like Swing or AWT.
I attach Babylon, if anyone wants to try to compile with ABCL. The only think to compile is in make.cl and make-sun.cl to put some paths to your folders in your PC. For example in make.cl in the first line I put this to compile in D:\ folder
#-:MCL "D:\Babylon\" ;;; <--- change the pathname string here!!!!
If it's not possible to compile with ABCL, how do you try to do a communication protocol? Some idea or example? Web Services....?
Thanks for your help
-----Mensaje original----- De: Alessio Stalla [mailto:alessiostalla@gmail.com] Enviado el: jueves, 01 de marzo de 2012 23:46 Para: santi CC: armedbear-devel@common-lisp.net Asunto: Re: [armedbear-devel] compiling lisp files outside Java and calling it after with abcl
On Thu, Mar 1, 2012 at 12:21 PM, santi scarbonell@ono.com wrote:
Hi,
I'm working with a lisp software called "Babylon". Babylon is a software from AI that works with frames, prolog....
Ok, let's try to be more scientific. The only mentions of Babylon I could find from a quick Google search date back to the late 90's. Is Babylon available for download somewhere? Is someone actively developing it? From your words, it seems like you're already running it on another Lisp implementation. Is that the case? If yes, which implementation?
ABCL fully implements ANSI Common Lisp, but Babylon might use implementation-specific extensions, or techniques like tail recursion that don't work well on ABCL (since you're mentioning stack overflows, that might be a reason).
What I'm trying to do is to load Babylon into a JVM and then call its functions using a Java interface, for example Java Swing or AWT. This is
why
I'm trying to use ABCL to load Babylon into JVM
If everything else fails, you can always run Babylon where you're running it now, develop a communication protocol to talk with it remotely, and use a JVM client with ABCL speaking the same protocol to do whatever GUI stuff you want. This is easier than it sounds in Lisp because, security and efficiency concerns aside, you can just send printed S-expressions back and forth.
Peace, Alessio