Sunday, January 31, 2010

Thinlisp

Came across Thinlisp today while browsing cliki. Sounds interesting - develop in CL and then deploy in C. Its similar to ECL in the way of using C as a bridge but in reality its completely different. ECL is a CL implementation that uses C as a compiler. Thereby you can generate very small and very efficient standalone executables.

Thinlisp on the other hand, is supposed to work on any CL implementation. It uses CL to generate C. It works with a subset of lisp and doesn't support any garbage collection. I had a look at it today, its pretty old. The code looks like its been abandoned by Gensym. Nevertheless, I decided to give a try. Will post results as I get going it with, but I do expect some amount of bit-rot. Vladimir Sedach seems to have hacked at it a few years back, and has posted tarball. That would be my starting point.

1 comment:

Vladimir Sedach said...

Knowing what I know now (after working on Parenscript for a while, and learning a bit about type inference and unification algorithms), I would go with something like Fredriksson's c-amplify (http://voodoo-slide.blogspot.com/2010/01/amplifying-c.html) if I needed to generate C. Of course c-amplify hasn't been released yet. :(