Teaching
Courses I have taught at Utrecht University (1998-2005) and at Delft University of Technology (since 2006).
Courses at Delft University of Technology
2018-2019
- Compiler Construction (Semester 1; Master Computer Science)
- Language Engineering Project (Q4; Master Computer Science)
-
Seminar Programming Languages
- Concepts of Programming Languages (Q3; Bachelor Computer Science) (mostly taught by Casper Bach Poulsen)
2017-2018
- Compiler Construction (Semester 1; Master Computer Science)
- Language Engineering Project (Q4; Master Computer Science)
-
Seminar Programming Languages
- Concepts of Programming Languages (Q3; Bachelor Computer Science) (mostly taught by Casper Bach Poulsen)
2016-2017
- Compiler Construction (Semester 1; Master Computer Science)
- Concepts of Programming Languages (Q3; Bachelor Computer Science)
- Language Engineering Project (Q4; Master Computer Science)
2015-2016
- Software Security (Q2; Master Computer Science)
- Concepts of Programming Languages (Q3; Bachelor Computer Science)
- Language Engineering Project (Q4; Master Computer Science)
2014-2015
- Concepts of Programming Languages (Q3; Bachelor Computer Science)
- Language Engineering Project (Q4; Master Computer Science)
2013-2014
- Seminar Meta-Programming (Quarter1; Master Computer Science)
- Concepts of Programming Languages (Semester 2; Bachelor Computer Science)
- Model-Driven Software Development (Semester 2; Master Computer Science)
2012-2013
- Seminar Meta-Programming (Quarter1; Master Computer Science)
- Concepts of Programming Languages (Semester 2; Bachelor Computer Science)
- Model-Driven Software Development (Semester 2; Master Computer Science)
2011-2012
- Seminar Meta-Programming (Quarter1; Master Computer Science)
- Concepts of Programming Languages (Semester 2; Bachelor Computer Science)
- Model-Driven Software Development (Semester 2; Master Computer Science)
2010-2011
- Seminar Meta-Programming (Quarter1; Master Computer Science)
- Compiler Construction (Semester 1; Master Computer Science; with Guido Wachsmuth)
- Concepts of Programming Languages (Semester 2; Bachelor Computer Science)
- Model-Driven Software Development (Semester 2; Master Computer Science)
2009-2010
- Seminar Meta-Programming (Quarter1; Master Computer Science)
- Principles of Programming Languages (Quarter 2; Minor Computer Science)
- Model-Driven Software Development (Quarter 3+4; Master Computer Science)
2008 - 2009
- Principles of Programming Languages (Quarter 2; Minor Computer Science)
- Model-Driven Software Development (Quarter 3+4; Master Computer Science)
2007 - 2008
- Principles of Programming Languages (Quarter 2; Minor Computer Science)
- Program Transformation and Generation (Quarter 3+4; Master Computer Science)
Courses at Utrecht University
2005 - 2006
- Software Engineering (Period 1)
- Software Generation and Configuration (Period 2)
- Program Transformation (Period 3)
2004 - 2005
- Software Engineering (Period 1)
- Software Generation and Configuration (Period 2)
- Program Transformation (Period 3)
2003 - 2004
- Software Engineering (Period 1)
- High-Performance Compilers (Period 1)
- Program Transformation (Period 2)
2002 - 2003
- High-Performance Compilers (Period 1; seminar)
- Introduction Software Technology (Period 1)
- Software Engineering (Period 2)
- Program Transformation (Period 3)
- Object-Oriented Programming (Period 3 & 5)
2001 - 2002
- Software Generation (Period 1)
- Object-Oriented Programming; lab (Period 1)
- High-Performance Compilers (Period 2)
- Imperative Programming; lab (Period 2)
- Object-Oriented Modeling (lab) (Period 2)
- Functional Programming (lab) (Period 4)
2000 - 2001
- High-Performance Compilers (Period 1)
- Object-Oriented Modeling and Programming (Period 1)
- Software Engineering (Period 2)
- Academic Writing for Graduate Students (December 2000 - March 2001)
- Software Generation (Period 5)
1999 - 2000
- Implementation of Programming Languages (Period 1)
- Software Engineering (Fall)
- Program Optimization Seminar (Period 3)
- Software Engineering (Spring)
- Software Generation (Period 5)
1998 - 1999
- Object-Oriented Modeling and Programming (practicum)
- Software Engineering (Spring)