TDDE55 · 6 credits · Basic level (G2F) · Datateknik, Datavetenskap
Data and Program Structures
Discontinued
No exam statistics yet
There is no exam sitting with at least 5 students in the last three academic years. New courses and project-only courses often have no statistics.
Part of 4 programmes
About the course
Aim
The aim of the course is that the students should gain knowledge of different programming paradigms and strategies for evaluation, and how these can be implemented. After the course the student will be able to:
- implement various aspects of evaluation and execution in different language models
- understand how design choices affect the expressiveness and efficacy of a programming language
- understand different evaluation and compilation strategies for different programming languages based on their models
- implement programming languages in the form of an interpreter and a compiler
Content
The following topics are adressed during lectures and lessons:
- The Python programming language, used as a tool in the literature and during the labs, and as a model language for implementing other languages.
- The substition and environmental model.
- Programming paradigms and models of evaluation, e.g. declarative, functional, imperative, object oriented; lazy evaluation, streams, non-deterministic evaluation, logic programming.
- Aspects of evaluation, parameter passing, exection environments and models of recursion.
- Study and implmenentation of an interpreter for a kernel language.
- Bytecode, virtual machines and garbage collection strategies.
- Scheduled hours
- 64 h
- Main field of study
- Datateknik, Datavetenskap