Hpc Schedule

Tiger in Stratego -- Compilation by Program Transformation
In the course we discuss the following topics (Chapters refer to ModernCompilerImplementationInML). The project entries in the schedule are steps in building the TigerCompiler.

Week 1

Week 2

  • Meeting 3 (5/11)
    • Translation To Intermediate Representation (Chapter 7)
    • Tiger Typecheck (Chapter 5)
  • Meeting 4 (9/11)
    • no meeting scheduled (voorlichting)

Week 3

  • Meeting 5 (12/11)
  • Meeting 6 (16/11)
    • Canonical Form for Intermediate Representation (Chapter 8)
    • MarcelBroeken?

  • Project
    • IR2ASM: Instruction Selection for MIPS
    • CanonicalizeIR: canonicalize Intermediate Representation

Week 4

  • Meeting 7 (19/11)
  • Meeting 8 (23/11)
    • Loose ends in the basic compiler

  • Project
    • Finish basic compiler
    • week 5-6: Polish and extend with optimizers

Week 5

  • Meeting 9 (26/11)
    • Dataflow Analysis (Chapter 17)
    • PaulHagg
  • Meeting 10 (30/11)
    • Register Allocation (Chapter 10, 11)
    • Jory van Zessen

Week 6

  • Meeting 10 (3/12)
    • The Memory Hierarchy (Chapter 21)
    • Wessel Dankers
  • Meeting 11 (7/12)

Week 7

  • Meeting 11 (10/12)
    • Pipelining and Scheduling (Chapter 20)
    • AlanVanDam
  • Meeting 11 (14/12)
    • Compiling Functional Programming Languages (Chapter 15)
    • Jory van Zessen, MartinBravenboer

Week 8