smlisp is a sufficiently complicated C program by Greenspun's tenth rule.
In other words, it is an ad-hoc, informally specified, bug-ridden, slow implementation of half of Common Lisp.
Its purpose is educational, namely to learn and teach C language, parser and interpreter programming and some useful data structures and techniques (and why not, some LISP). All this by studying and developing a complex project.
THIS IS A TOY! DO NOT USE FOR ANYTHING SERIOUS! NO GUARANTEES!