ComPiler200002:Growing a Compiler


http://www.cs.dartmouth.edu/~mckeeman/cs48/mxcom/gem/html/GrowingCompiler.html

by Bill McKeeman and Lu He

MathWorks and Dartmouth, May 2009

Contents

  • Abstract
  • Chapters
  • Notes
  • References
  • Signatures

AbstractBase GEM
  • statement of the problem
  • executable grammars
  • simple examples
  • Robust GEM
    • pre-entered character classes
    • using nowhite, pretty, invert
  • GEM with builtin nowhite and chars
    • using multi-character input and output symbols
    • left-associative arithmetic expressions
    • X86 floating point stack
  • GEM with builtin multichar symbols
    • using Kleene * and + in executable grammars
  • Running Intel X86 code
    • X86 Assembler
    • calculator
    • atoi
  • Plenty Phrase Names
    • BNF
    • self
    • pretty
  • NotesCompiler and Compiler Course
  • Wikipedia Mealy Machine
  • Guy Steele Growing a Language.
  • Doug Michels A concise extensible metalanguage for translator implementation
  • Signatures

    • Bill McKeeman , MathWorks Fellow
    • Lu He, Computer Science Department, Dartmouth

    An earlier version was presented to the Computer Science Colloquium, Stanford, March 4, 2009