TIES542 Principles of Programming Languages (5 cr)

Study level:
Advanced studies
Grading scale:
0-5
Language:
Finnish
Responsible organisation:
Faculty of Information Technology
Curriculum periods:
2017-2018, 2018-2019, 2019-2020

Description

Sisältö

Kurssilla analysoidaan ohjelmointikieliä ja pohditaan hyvän ohjelmointikielen olemusta. Lisäksi kurssilla tutustutaan ohjelmointikielten tutkimuskirjallisuuteen ja siinä yleisesti käytettyihin formalismeihin.

Suoritustavat

Oppimistehtävät

Arviointiperusteet

Pakollisiksi kulloinkin määriteltyjen oppimistehtävien suorittaminen hyväksytysti antaa oikeuden arvosanaan 1. Oppimistehtävistä on lisäksi mahdollista ansaita pisteitä, joiden yhteismäärän perusteella määrätään muu arvosana.

Learning outcomes

Kurssin suoritettuaan opiskelija osaa kriittisesti arvioida ohjelmointikielten alaan liittyvien argumenttien pätevyyttä paras tutkimusnäyttö huomioon ottaen sekä myös esittää tällaisia argumentteja. Tämän tueksi opiskelija osaa lukea kriittisesti ohjelmointikielten tutkimuskirjallisuutta ja ymmärtää tutkimuskirjallisuudessa esiintyviä matemaattisia formalismeja.

Description of prerequisites

Hyvä ohjelmointitaito (vähintään kurssien Ohjelmointi 1 & 2 ja Algoritmit 1 & 2 osaamistavoitteiden hyvä hallinta, suositellaan lisäksi kurssien Funktio-ohjelmointi 1 & 2 sekä Oliosuuntautunut suunnittelu ja ohjelmointi osaamistavoitteiden hallintaa)
Abstraktin matematiikan kielen tuntemus (esimerkiksi kurssin Diskreetit rakenteet osaamistavoitteiden hallinta)
Formaalien kielten teorian tuntemus (kurssin Automaatit ja kieliopit osaamistavoitteiden hallinta)
Suositellaan myös kääntäjätekniikan perusteiden tuntemusta (kurssin Kääntäjätekniikka, 2 op, osaamistavoitteiden hallinta)
Suositellaan lisäksi tilastomenetelmien perusteiden tuntemusta

Study materials

Opettajan kulloinkin valitsema tutkimuskirjallisuus sekä sen lukemista tukeva lisämateriaali.

Completion methods

Method 1

Select all marked parts
Parts of the completion methods
x
Unpublished assessment item