Uni-Logo

Essentials of Programming Languages

Grundlagen von Programmiersprachen/ Essentials of Programming Languages

General

LecturerProf. Dr. Peter Thiemann
AssistantGabriel Radanne
LectureMonday, 2pm - 4pm, SR 01-016, Building 101
Wednesday, 2pm - 3pm, SR 01-016, Building 101
ExerciseWednesday, 3pm - 4pm, SR 01-016, Building 101

News

Classes

DateTopicsMaterial
16.04.2018, 18.04.2018Introduction: syntax, abstract syntax, semantics stylesSlides 01-intro.pdf
23.04.2018State and the WHILE languageSlides
25.04.2018
TBDbinding and scope, environmentsPFPL 7.1, 7.2; Script 4
TBDFunctions, static/dynamic scope, strong normalizationPFPL 8; Script 7.4 (static/dynamic scope)

Exercises

The exercises for this lecture will be composed of a succession of language definitions, each with potential extensions. Your task is to implement these language definitions with PLT Redex, a Racket framework for implementing language semantics. Knowledge of Racket (or any other Lisp dialect) is not required. You are encouraged to consult the tutorial and the reference manual.

To get started, install the racket language on your system and launch the IDE "Dr Racket" (drracket on the command line).

DateSheetMaterialSolutions
18.04.2018Introduction and arithmetic expressions1-arith.pdf arith.rkt

Literature