@InProceedings{yu02:filcomp, author = {Dachuan Yu and Valery Trifonov and Zhong Shao}, title = {Type-Preserving Compilation of {Featherweight IL}}, booktitle = {Proc. 2002 Workshop on Formal Techniques for Java-like Programs (FTfJP'02)}, year = 2002, month = {June}, abstract = { We present a type-preserving compilation of Featherweight IL. Featherweight IL is a significant subset of MS IL which models new features including value classes and their interaction with reference classes. Our translation makes use of a high-level intermediate language called Functional Featherweight IL. The target language LFLINT is a low-level language which is close to machine level implementations. During the compilation, we preserve and further identify the basic block structures of the program, and perform CPS and closure conversions. We use memory based fixpoint to handle mutually recursive classes at compile time. Standard linking techniques can be applied for separate compilation. A type-preservation theorem for the formal translation is presented. In the long run, our work aims at supporting certifying compilation of high-level class-based languages.} }