Friday, May 12, 2006


I gave a presentation on the work I've done on Noodle at last night's Utah Python User's Group meeting. I made an alpha release of Noodle available to complement that presentation. You can find both a tarball and the slides (OpenOffice format) at The slides are in PDF format on UPyUG's site here.

The conclusion I made in the presentation was that designing a language is far harder than implementing it. I think Noodle works very well -- that is, there is a decent implementation of the language as designed -- but the design is not good enough. The and [foo bar] attribute reference and subscripting syntaxes I mentioned previously have yet to feel comfortable to me. The semantics of macro namespaces leave some cases which are difficult to handle or just plain annoying. There are more warts than those. Noodle is not yet a language I would use in preference to Python or Lisp for general work.

I do still think it could reach that point, but who knows what could change by then? As I mention on the last slide, I reserve the right to change everything quite completely. This release of Noodle is more for the academic interest of others, rather than being a good tool for real work.

Next step is to put up some prettified docs and a tutorial.