[elephant-devel] Status of HEAD and 0.6.1

Ian Eslick eslick at csail.mit.edu
Mon Jan 22 16:30:41 UTC 2007


The re-organization for the 0.6.1 feature set has stabilized and the  
current HEAD passes all tests under Allegro 8.0 / OS X / Intel  
against BDB 4.4.

This reorganization is a big step towards several new features to be  
added shortly:
- Support for symbol id's
- Finish support for 64-bit Lisp's
- Clean up support for multi-threading and multiple store controllers

There is a laundry list of minor features planned for 0.6.1.  If  
anyone would like to contribute, now is a good time to jump in while  
the development tree is somewhat stable.  I'll move the source tree  
to SVN and enter outstanding issues into Trac after these features  
are done.

I would also appreciate anyone who wants to run the test suite on  
alternate lisps, architectures and OS's.  In particular, a Win32  
tester is much needed as the new build process doesn't work on  
win32.  I think it's a minimal amount of work.

This check-in includes the following fixes and enhancements:

Major:
x Modularize serializers for easy upgrade
x Implement backend support for symbol-table protocol
x MCL 1.1 unicode support; clean up other lisp support for unicode
x Simplify user-specific configuration parameters using config.sexp  
and my-config.sexp
x Ensure thread safety in buffer-stream allocation!
x Simplify unicode support, database format has a canonical form  
which is translated by lisp
x Remove DB version tags, created deadlock with modular serializers.   
All DB directories now have a file VERSION associated with it.

Minor:
x Diffs for lisp-controlled DB checkpointing (by Gabor Melis)
x Improved optimization options to be more user controlled (Pierre  
Thierry)
x New build interface; remove Makefiles (sans win32), (help from  
elephant-devel, I forget who)
x Think through default *store-controller* vs. explicit parameter  
passing referencing all over the APIs (Enable explicit passing  
everywhere, maintain *store-controller* defaults.  This makes multi- 
threading support simpler.  Users can pass the store controller or  
rely on a global *store-controller*)
x Verify that operations such as indexing are thread safe
x Investigated gensym warnings in berkeley-db.lisp (caused by an FFI  
macro, no harm in it)
x Remove all sleepycat references and use berkeley-db or bdb instead  
(due to Oracle acquisition)
x Remove warnings in libberkeley-db.c

Regards,
Ian



More information about the elephant-devel mailing list