No Assembly Required

"No Assembly Required: Compiling Standard ML to C" (1990) by David Tarditi, Peter Lee, Anurag Acharya (see

This paper shows how to compile Standard ML [SmlLanguage] to C [CeeLanguage] without compromises on portability and ProperTailRecursion by converting Standard ML code to a ContinuationPassingStyle LambdaCalculus intermediate language which is then compiled to C.

The technique used is similar to the RegisterTransformation? and StackTransformation? techniques described in the book EssentialsOfProgrammingLanguages. (At least in the first edition. Apparently some of the more advanced chapters were cut or simplified for the second edition. However, see for examples of these techniques.)

Also see CeeAsAnIntermediateLanguage and CheneyOnTheMta.

View edit of May 5, 2004 or FindPage with title or text search