On Mar 9, 2019, at 01:37, Alexandre Rademaker arademaker@gmail.com wrote:
Since this thread mentioned JSS, I would like to use the opportunity to understand it better. Is JSS the best approach for making a Lisp wrapper around a Java library? I know that we had the previous project related to RDF and ABCL, building wrappers around the http://jena.apache.org/, but all initiatives that I know are not active anymore. I was trying to learn the best approach to use nowadays.
[JSS][] certainly remains a key part of integrating Java code into into ABCL, mainly because Alan Ruttenberg keeps adding features, and its users keep fixing bugs.
But JSS is just part of [contributions we ship with ABCL][abcl-contrib] that may be used in making Lisp wrappers of Java libraries. Of equal importance in ABCL-CONTRIB is probably [abcl-asdf][], which allows one to refer to the installation of Java libraries from the distributed network of Maven annotations. In the “project related to RDF and ABCL” (i.e. Jeannie), it is this ability to refer to the [Jena artifacts in the ASDF definition][jeannie] that is probably more useful than JSS itself, as it “automates” the steps that the end user needs to perform to install the Java libraries that one is wrapping. Note Jeannie is probably still as active a project as it has ever been, in that I still ensure that Jeannie works for my usage, updating the Jena artifacts when I have the need.
For a more groovy experience in interactively working with Java code, there exists [a substantial re-working of SLIME with abcl-1.5.0][slime/abcl]. Work on [merging these patches with mainline SLIME][slime/pull/502] constitutes on ongoing project.
[JSS]: https://gitlab.common-lisp.net/abcl/abcl/blob/master/contrib/jss/README.mark...
[jeannie]: https://bitbucket.org/easye/jeannie/src/94292eee81d53046d9844e5e6c31cf768117...
[slime/abcl]: https://github.com/easye/slime/tree/abcl
[abcl-contrib]: https://gitlab.common-lisp.net/abcl/abcl/tree/master/contrib/
[abcl-asdf]: https://gitlab.common-lisp.net/abcl/abcl/tree/master/contrib/abcl-asdf
[slime/pull/502]: https://github.com/slime/slime/pull/502