Samstag, 14. Juni 2008

dLISP 0.100.0 Released

I am proud to release version o.100.o of dLISP, the LISP interpreter for D.

This is still experimental software, but is used already as a scripting language for a free game under development. During the course of using dLISP in practice a laundry list of bugs were discovered and fixed - too many to list here. Also note that dLISP is not a faithfull implementation of Common Lisp, and isn't even trying - it's just another Lisp dialect.

Changelog
  • Closure support. Functions now carry their own context with them.
  • Constructs such as (1 2 3) are not valid any more - these shadow too many bugs.
  • Ridiculously easy bindings for D classes - see iteration-zero source for example.
  • Simple object model. Prototype based class hierachy. Automatic generic functions for classes exported from D.
  • Partially covered by test cases now.
  • Added gensym.
  • Friendlier to debug complex code - built-in tracebacks.
Known Bugs / Missing features
  • Generic function evaluation doesn't work out of the box for user defined methods.
  • The ,@body syntax is not supported.
  • Keyword arguments are not supported.
  • Source code positions on errors are wrong.
  • Tracebacks may be misleading in places.
  • Missing function macro-expand.
Thanks go to the original author, from whom I have taken over the codebase:
Thank you Fredrik Olsson.

The download can be found on the google code page.
Bug reports go to the issue tracker.

Have fun!