I don't know if you saw it, but Matthias Blume posted (in comp.compilers) that he is working on separating the front end (parser, type checker and elaborator) from SML/NJ and turning it into a library.