Affiliation:
1. Princeton Univ., Princeton, NJ
Abstract
If a compiler for language
L
is implemented in
L
, then it should be able to compile itself. But for systems used interactively commands are compiled and immediately executed, and these commands may invoke the compiler; so there is the question of how ever to cross-compile for another architecture. Also, where the compiler writes binary files of static type information that must then be read in by the bootstrapped interactive compiler, how can one ever change the format of digested type information in binary files?
Here I attempt an axiomatic clarification of the bootstrapping technique, using
Standard ML of New Jersey
as a case study. This should be useful to implementors of any self-applicable interactive compiler with nontrivial object-file and runtime-system compatibility problems.
Publisher
Association for Computing Machinery (ACM)
Reference6 articles.
1. A alternate form of the “UNCOL diagram”
2. A formalism for translator interactions
3. Computer-aided production of language implementation systems: A review and classification;LECARME O.;Softw. Pract. Exp.,1982
4. MILNER R. TOFTE M. AND HARPER R. 1990. The Definition of Standard ML. MIT Press Cambridge Mass. MILNER R. TOFTE M. AND HARPER R. 1990. The Definition of Standard ML. MIT Press Cambridge Mass.
Cited by
5 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Bootstrapping domain-specific meta-languages in language workbenches;ACM SIGPLAN Notices;2017-05-12
2. Bootstrapping domain-specific meta-languages in language workbenches;Proceedings of the 2016 ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences;2016-10-20
3. The design and implementation of Object Grammars;Science of Computer Programming;2014-12
4. Self-certification;ACM SIGPLAN Notices;2012-01-18
5. Machine Function Based Control Code Algebras;Formal Methods for Components and Objects;2004