Since then we - a small team of lisp hackers - have been hard working to improve ABCL. Yesterday it was pointed out to me that the Lisp community was probably unaware of the renewed energy being put into ABCL's development.
Our efforts have concentrated on 3 areas of improvement:
- Correctness - doing right what is already implemented
- Conformance - implementing what the spec says should be
- Features - things the spec doesn't require, but which are too handy not to provide standard
With respect to the features, we're proud of our achievements, which are two-fold: first of all we have added some Lisp features most implementations provide (
- compiler improvements such as unboxed local variables
- COMPILER-LET and
- locking primitives for threading
- lots of other stuff;
- JSR-223 support: being a scripting engine for any Java application
- Threading primitives (different ones) which inter operate with the Java world
- Improved Ant-based build system
But we did more: ABCL was separated out of the source tree of the J editor (and moved to common-lisp.net). A wiki, mailing lists, new project pages, a repository and defect tracker have been set up. A bi-monthly release schedule has been put into place - source releases only for now and we're working toward binary releases too.
On this blog, I will discuss the advances and difficulties that make up the ABCL development experience.