Till KTH:s startsida Till KTH:s startsida

Ändringar mellan två versioner

Här visas ändringar i "Seminars, Modules, and Exercises" mellan 2016-06-06 16:47 av David Broman och 2016-06-06 17:17 av David Broman.

Visa < föregående | nästa > ändring.

Seminars, Modules, and Exercises

Seminars The course is divided into 3 modules. Each module starts with a seminar and ends with a seminar. All seminars will take place in the conference room Ada, Electrum, KTH Kista (elevator A, level 4, entrance to SCS).


* Seminar 1: Course Introduction and Introduction to Module 1.Tuesday June 7, 13.00-17.00
* Seminar 2: Presentation of solutions to Module 1 and introduction to Module 2. Monday August 29, 10.00-17.00
* Seminar 3: Presentation of solutions to Module 2 and introduction to Module 3.Monday October 17, 10.00-17.00
* Seminar 4: Presentation of solutions to Module 3. Course ending.Thursday November 17, 10.00-17.00
Module Exercises Module 1: Operational semantics and the lambda calculus Seminar 1Tuesday June 7, 13.00-17.00¶ ¶ Place: ¶ ¶June 7 to August 29¶

The main topics for module 1 are: ¶


* Small-step and big-step operational semantics
* Untyped lambda calculus
* Fundamental typed functional programming
Exercises for module 1:¶


* Read the TaPL Chapter 1 (as an introduction) and Chapter 2 (to make sure that you have the mathematical background).
* Read Chapters 3, 4, 5, 6, and 7 carefully.
* Read the paper Natural Semantics by Kahn (1987). See the literature page for a link.
* Solve all programming exercises available in this PDF file.
Be prepared to give a presentation of some of the topics that you have read, or to present some of your solutions. Who will present what will be announces approximately 2 weeks before seminar 2.¶

Module 2: Typed lambda calculus with extensionsAugust 29 to October 17¶


* Type rules
* Type soundness proofs
* Semantics for let bindings, pairs, tuples, records, sums, and lists
* References and exceptions
Exercises for module 2:¶


* To be announced at seminar 2.
Module 3: Subtyping and PolymorphismOctober 17 to November 17¶


* Subtype polymorphism
* Parametric polymorphism
* Ad-hoc polymorphism
* Structural and nominal type systems
* Gradual typing
Exercises for module 3:¶


* To be announced at seminar 3.