Course Schedule
Pt02
The course will be thaught in January and February of 2003.
This is the planned schedule for the course. Adjustments might be made along the way so check this
page regularly.
Participants are expected to attend all lectures.
Chapters from the lecture notes
Strategies for Program Transformation will be handed out during
the lectures. The number of copies will be based on the number of students
registered for the course. Part
of the lecture will be dedicated to making exercises, which should be handed in at the end of the
lecture. A good job on these exercises will result in a bonus point for your grade.
Week 2
Lecture 1 (6/1/2003)
- Introduction
- Program Representation
Lecture 2 (10/1/2003)
Lab
- Syntax definition and term rewriting
Week 3
Lecture 3 (13/1/2003)
- Program Transformation with Concrete Object Syntax
Lecture 4 (17/1/2003)
- In Control of Rewriting
- Composing Strategies
Lab
- Rewriting with concrete syntax
Week 4
Lecture 5 (20/1/2003)
- First-Class Pattern Matching
Lecture 6 (24/1/2003)
- Generic Traversal Strategies
Lab
Week 5
Lecture 7 (27/1/2003)
- Scoped Dynamic Rewrite Rules
Lecture 8 (31/1/2003)
Lab
- Writing a profiler for Tiger
Week 6
Lecture 9 (3/2/2003)
- Constant Propagation (2)
- Partial evaluation
Lecture 10 (7/2/2003)
- Simplification of Functional Programs
Lab
- Develop a partial evaluator for Tiger
Week 7
Lecture 11 (10/2/2003)
- Application Generation (Jonne van Wijngaarden)
Lecture 12 (14/2/2003)
- No lecture: thesis defense of Joost Visser
Lab
- Develop a partial evaluator for Tiger
Week 8
Lecture 13 (17/2/2003)
- XML Transformation (Martin Bravenboer)
Lecture 14 (21/2/2003)
Lab
- Develop a partial evaluator for Tiger
Week 9
- Exam: 28/2/2003 12:00--15:00