School of Computer Science and Information Technology


COMPILERS

Module Code: G52CMP

Method and frequency of class: Two lectures per week.

Tuesday, 09.00--10.00, CTF-LT2

Tuesday, 11.00--12.00, CTF-LT2

Method of assessment: Coursework (25%) ps, pdf and an unseen 2-hour examination (75%).

Module convener: Prof R C Backhouse


Literature

  1. Programming Language Processors in Java, David A. Watt and Deryck F. Brown, Prentice-Hall, 1999.
  2. Compilers - Principles, Techniques, and Tools, Alfred V Aho, Ravi Sethi, Jeffrey D. Ullman, Addison-Wesley, 1986.
  • Documentation on Lex
  • Documentation on Yacc
  • Old Examination Papers
  • Examinable Material
  • It will be assumed that [1] has been purchased.

    Lecture notes

    Slides of the diagrams in Watt and Brown's book will be used in the lectures. The following file contains three diagrams that should be printed out in colour. (The copying service charges £1 per page for colour copying!)

  • Mini-Triangle Concrete and Abstract Syntax

  • Some slides will be made available below, but only in exceptional cases.

  • Introduction and lecture 1 ps, pdf,

  • Language Theory. Brief revision of languages, regular expressions and grammars.

  • Contextual Analysis and Abstract Syntax Trees NB Slides used in lectures. Intended for viewing on-screen only.

  • UML Diagrams of AST Class

  • Visitor Pattern. NB Slides used in lectures. Intended for viewing on-screen only.

  • Grammar Analysis.

  • Coursework

    For detailed information, supplied code, frequently asked questions, and so on, see the laboratory web page
  • Specification ps, pdf

  • Dr Altenkirch's G51MAL lecture notes on parsing

  • Getting Help

    If you have any questions on the course then please come to see me immediately after the lecture or in my office (room B30).

    If you do have difficulty getting hold of me then send an email suggesting a time and day that you would like to come and see me. (But please keep email traffic to a minimum.)