Results 1 -
3 of
3
Axiomatic Bootstrapping: A guide for compiler hackers
, 1994
"... 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, there is the question of how ever to cross-compile for another architecture. Als ..."
Abstract
-
Cited by 8 (1 self)
- Add to MetaCart
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, 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. I use the 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. 1 Introduction A conventional C compiler, written in C, is said to be "bootstrapped" if it compiles itself. Now, suppose a new version of the compiler source is written, that uses different registers...
An Implementation of the Haskell Language
, 1990
"... This report describes the design and implementation of HASKELL system. The areas implemented are the lexical analysis, parsing, intepretation of the lambda tree, and machine code generation. Because of the size, complexity and novelty of the language many of these areas present particular difficulty ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
This report describes the design and implementation of HASKELL system. The areas implemented are the lexical analysis, parsing, intepretation of the lambda tree, and machine code generation. Because of the size, complexity and novelty of the language many of these areas present particular difficulty. A considarable amount of meta-programming was used in order to tackle the size of the project. Contents Introduction v 1 Lexical Analysis 1 1.1 Technical Overview 1 1.2 General Description 3 1.3 The Layout Rule 4 1.4 Alternative Design 5 1.5 Coding for Speed 6 1.5.1 Token Recognition 7 1.5.2 Character Copying 8 1.5.3 Memory Allocation 9 1.5.4 Symbol Table Updates 9 1.5.5 The Ultimate Combination 9 1.5.6 Performance 10 1.6 Testing 10 2 Parsing 11 2.1 Technical Overview 11 2.2 General Description 12 2.3 Handling the Grammar Ambiguities 13 2.3.1 Definable Operators and Function Applications 13 2.3.2 General 15 2.3.3 September Version 15 2.3.4 April Grammar changes 17 2.3.5 April Version 18 ...
Workshop on ML and its Applications
, 1994
"... Data-types and Operators: An Experiment in Constraint-based Parsing ......... 34 Francois Barthlemy and Francois Rouaix (INRIA-Rocquencourt) Object Oriented Programming and Standard ML ........................................ 41 Lars Thorup and Mads Tofte (DIKU) Object Interfaces, Polymorphic Met ..."
Abstract
- Add to MetaCart
Data-types and Operators: An Experiment in Constraint-based Parsing ......... 34 Francois Barthlemy and Francois Rouaix (INRIA-Rocquencourt) Object Oriented Programming and Standard ML ........................................ 41 Lars Thorup and Mads Tofte (DIKU) Object Interfaces, Polymorphic Methods and Multi-method Dispatch for ML-like Languages .............................................................................. 50 Dominic Duggan (University of Waterloo) Session 3:2:00-4:00 p.m. Advanced Features and Applications HimML: Standard ML with Fast Sets and Maps ......................................... 62 Jean Goubault (Bull) A Complete and Realistic Implementation of Quotations for ML ......................... 70 Michel Mauny and Daniel de Rauglaudre (INRIA-Rocquencourt) rnIPcTF, A Picture Environment for DTEX ............................................. 79 Emmanuel Chailloux (LITP) and Asc&nder Su&rez (Universidad SimOn Bolfvar) TERSE: TErm Rewriting Support Environment ........................................ 91 Nobuo Kawaguchi, Toshiki Sakabe and Yasuyoshi Inagaki (Nagoya University) Session 4: 4:00-5:30pm Demonstrations and Posters Sunday, June 26 Session 5:9:00-10:30 a.m. Compilation 14-1=1: an Optimizing Caml Compiler ................................................ 101 Manuel Serrano and Pierre Weis (INRIA-Rocquencourt) ML Partial Evaluation using Set-based Analysis ........................................ 112 Karoline Malmkjaer (Aarhus University), Nevin Heintze (Carnegie Mellon University) and Olivier Danvy (Aarhus University) Minimal Typing Derivations ........................................................... 120 Nikolaj Skallerud Bjorner (Stanford University) iii Session 6:11:00 a.m.- 12:30 p.m. Security and Recompilation ...

