From February 10, 2018 until July 6, 2018

Course: TI2606 Edition: 2017-2018

Course staff
  • Casper Poulsen
  • Eelco Visser
  • Taico Aerts
  • Casper Boone
  • Maarten Sijm
  • Thomas Smith
  • Dominique van Cuilenborg
About the Course

The design of a programming language is the result of a selection from a general collection of programming language concepts. With some frequency, new languages are introduced that combine concepts in an novel manner and sometimes introduce new concepts. During his/her career, a computer scientist will have to work with more than one generation of programming languages. In order to learn new programming languages, a computer scientist should understand the basic principles in the design of programming languages.


Change in tests suite of week 7

The test suite assignment template has changed. The old version will not compile. You can reset your template OR you can add the following methods at the bottom:

 * Apply strictness to a value
def strict(v: Value): Value

 * Recursively apply strictness to a value
def force(v: Value): Value
at Wed, Mar 28, 2018 10:53 updated at Wed, Mar 28, 2018 10:53

Updated reference interpreter for week 5

As announced at the lecture on Thursday, we have updated the reference interpreter and spec-tests for week 5 to use 0-indexed stores; that is, the initial store cell location index is now 0, and not 1.

E.g., the following program:

(box 42)

now evaluates to:

(BoxV(0), List(Cell(0, NumV(42))))
at Sun, Mar 11, 2018 22:25

Updated spec-tests

We have updated the spec-tests for week 2.

You may want to check how your desugarer deals with projection expressions that are given a negative integer.

at Thu, Feb 22, 2018 21:33