Opintojakso, lukuvuosi 2024–2025
COMP.CS.400
Principles of Programming Languages, 5 op
Tampereen yliopisto
- Kuvaus
- Suoritustavat
Opetusperiodit
Aktiivinen periodissa 1 (1.8.2024–20.10.2024)
Aktiivinen periodissa 3 (1.1.2025–2.3.2025)
Aktiivinen periodissa 4 (3.3.2025–31.5.2025)
Koodi
COMP.CS.400Opetuskieli
englantiLukuvuodet
2024–2025, 2025–2026, 2026–2027Opintojakson taso
AineopinnotArvosteluasteikko
Yleinen asteikko, 0-5Vastuuhenkilö
Vastuuopettaja:
Matti RintalaVastuuorganisaatio
Informaatioteknologian ja viestinnän tiedekunta 100 %
Järjestävä organisaatio
Tietotekniikan opetus 100 %
Core content
- Phases of translation: lexical analysis, syntax analysis, semantical analysis, abstract syntax tree, symbol table. Basic operating principles of a compiler/interpreter. Implementing the lexical and syntax analysis of a simple programming language.
- Object models and other implementation choices and implementation principles of the most common programming language features. Value and reference semantics.
- Principles of memory management, e.g., the content and importance of activation records.
- Basic knowledge of different programming paradigms.
Understanding programs written in different paradigms - Type systems. Differences between static and dynamic typing.
Complementary knowledge
- Implementing semantic analysisa and an interpreter for a simple programming language.
- Detailed implementation of some features in a certain programming language.
- Implementation of activation records in a certain computer architecture.
- Writing small programs in different programming paradigms.
- Type inference. How static/dynamic typing affects other aspects of a programming language.
Specialist knowledge
- Compiler optimization techniques and effect of CPU architectures to programming language performance.
- Writing real programs in a certain paradigm other than the most common ones. The basics of monads in Haskell.
- Genericity and type systems. Higher order types and type classes.
Osaamistavoitteet
Pakolliset esitiedot
Suositellut esitiedot
Lisätiedot
Oppimateriaalit
Vastaavat opintojaksot
Kokonaisuudet, joihin opintojakso kuuluu
Suoritustapa 1
Osallistuminen opetukseen
17.09.2024 – 20.10.2024
Aktiivinen periodissa 1 (1.8.2024–20.10.2024)
07.01.2025 – 27.04.2025
Aktiivinen periodissa 3 (1.1.2025–2.3.2025)
Aktiivinen periodissa 4 (3.3.2025–31.5.2025)