Also ... in dem Versuch, bereits existierende Räder zu verwenden, anstatt meine eigenen an jeder Ecke neu zu erfinden, habe ich versucht, eine ordentliche Common-Lisp-Umgebung zu bekommen, die mit [einer bestimmten Java-Bibliothek] arbeitet. Meine ABCL-Abenteuer sind wirklich einigermaßen gut gelaufen und ich habe es schließlich geschafft, dass sich ABCL gut mit [it] unterhalten hat. Natürlich wollte ich mehr als nur das, ich wollte Interoperabilität zwischen dem [it] und meinem halbrunden Rad, chemicl, einem Cheminformatics-Paket, das ich in Common Lisp geschrieben habe. Hier begann der Zug von den Gleisen zu fallen.Was sind die möglichen Ansätze für Common-Lisp/Java-Interoperabilität?
ABCL und cxml-stp
Eine Weile zurück, in einem früheren, bemerkte ich, abgebrochenen Versuch, einige meiner chem/Bioinformatik (https://github.com/slyrus/cl-bio) Sachen arbeiten mit ABCL zu bekommen, dass plexippus-XPath nicht sein könnte in ABCL geladen. Dies wurde behoben, daher wurde ich ermutigt, dass die Dinge mit ABCL funktionieren könnten. Cxml-stp scheint ABCL jedoch zu brechen.
Hoffentlich ist dies ein reparierbarer Bug und einige zukünftige Versionen von ABCL funktionieren mit cxml-stp.
In der Zwischenzeit ...
Andere CL und Java
Also, ich dachte ich immer Java einige andere Ansätze versuchen würde und eine Common Lisp Implementierung schön zu spielen. Ich weiß, du denkst "Warum benutzt der Typ nicht nur Clojure? Schließlich ist Clojure dafür geschaffen!" Nun, das ist eine gute Frage. Ich habe clojure für einige frühere Erkundungen mit [dieser Java-Bibliothek] verwendet, und obwohl die Java-Integration im Allgemeinen gut funktioniert, habe ich eine Menge vorhandenen Common-Lisp-Code, den ich gerne verwenden würde, und zu der Zeit schien es zumindest so Alle Clojure Wrapper waren dünne Wrapper um hässliche Java-Bibliotheken. Ich habe viele Common-Lisp-Bibliotheken kennen und lieben gelernt, von denen viele in QuickLisp verfügbar sind, und ich würde gerne in der Lage sein, diese zu verwenden (Dinge wie cxml-stp, plexippus-xpath, opticl, etc ...).).
Einige aktualisierte Informationen hier: http://jfli.sourceforge.net/ –
Und für FOIL auch: http://foil.sourceforge.net/ –