
Ckit is a c front end written in sml that translates c source code (after preprocessing) into abstract syntax represented as a set of sml datatypes. it also provides facilities for extending the c language with additional syntactic constructs, which can be useful for implementing "c-like" domain-specific languages as well as c dialects.