Compiler Physiology for Beginners

Abraham J. Simon, Mick Farmer

Publisher: Chartwell-Bratt, 1985, 279 pages

ISBN: 0-86238-064-2

Keywords: Programming

Last modified: April 6, 2021, 7:31 a.m.

Understanding and writing compilers for languages such as Pascal is ineteresting and rewarding. Mick Farmer gives you both insight into major areas of Compiler Physiology and practical knowledge of a working compiler for a sunset of Pascal.

Basic topics covered in this book include Grammars and Language, regular Expressions and Lexical Analysis, Top-down parsing, and Bottom-up parsing. More advanced topics discussed by the author are LR(k) Grammars and Parsers, Semantic Analysis, Code Generation, and Optimisation. Assignements at the end of each chapter guide your furtherreading and suggest modifications or extensions to the working compiler used as an example throughout the text.

Mick Farmer places great emphasis on the use of compiler writing tools and includes practical examples of the use of LEX and YACC, two such tools available on the popular UNIX operating system.

The material is based on the Compiler Writing Course taught by the author at Birkbeck College for the past three years.

  1. Grammars and Languages
  2. Regular Expressions and Lexical Analysis
  3. The Mini-Pascal Scanner
  4. LEX and the Scanner
  5. Top-Down Parsing
  6. Metcalfe's Syntax Machine
  7. The Mini-Pascal Syntax Analyser
  8. Bottom-Up Parsing
  9. LR(k) Grammars and Parsers
  10. YACC
  11. Semantic Analysis
  12. Code generation
  13. Optimisation
  14. Compiler Engineering
  • Appendix A: Syntax Diagrams for Mini-Pascal
  • Appendix B: The Syntax of Mini-Pascal in BNF
  • Appendix C: The Mini-Pascal Header Files
  • Appendix D: The Mini-Pascal Scanner Written in C
  • Appendix E: The Mini-Pascal Scanner Written in LEX
  • Appendix F: The Mini-Pascal C Files
  • Appendix G: The Mini-Pascal Makefile
  • Appendix H: The Mini-Pascal Run-Time Support Module


Compiler Physiology for Beginners

Reviewed by Roland Buresund

Disappointing *** (3 out of 10)

Last modified: May 21, 2007, 2:57 a.m.

If you want to be bored to death (and beyond), read this.


There are currently no comments

New Comment


required (not published)