Lisp implenentation in C, should be portable (enough)