Declaratieve talen (B-KUL-G0Q45B)

6 studiepuntenNederlands42 urenEerste semesterUitgesloten voor examencontract
POC Informatica

De studenten maken grondig kennis met declaratieve programmeertalen.  
Hierbij ligt de nadruk op het praktisch gebruik van een tweetal representanten van declaratieve talen, namelijk een logische en een functionele programmeertaal.
 
De belangrijkste doelstellingen van dit vak kunnen als volgt worden samengevat:

  • De student kent de onderliggende principes van logische en functionele programmeertalen.
  • De student kent de programmeertechnieken eigen aan logische en functionele programmeertalen.
  • De studenten kent de basisprincipes van de uitvoeringsmechanismen van declaratieve talen. 
  • De student kan programma's schrijven en debuggen in een logische en in een functionele programmeertaal waarbij hij de handleiding van de taal mag gebruiken.
  • De student kan de aangeleerde programmeertechnieken toepassen bij het schrijven van een uitgebreid programma. 
  • De student kan de aangeleerde talen plaatsen t.o.v. andere representanten van hetzelfde paradigma.
  • De student kan vertrekkende van zijn verworven inzichten en vaardigheden zelf nieuwe gerelateerde ontwikkelingen in programmeertalen aanleren.

De student kent een programmeertaal en kan programmeren.
De student kan recursieve programma's schrijven.

Dit opleidingsonderdeel is identiek aan de volgende opleidingsonderdelen:
X0C99A : Declaratieve talen

Onderwijsleeractiviteiten

3 sp. Declaratieve talen (B-KUL-G0Q45a)

3 studiepuntenNederlandsWerkvorm: College18 urenEerste semester
POC Informatica

De volgende materie wordt behandeld:

  • een logische programmeertaal, bv. Prolog
  • basisconcepten: predicaten, unificatie, backtracking, selectiestrategie, specificatie met behulp van Hornclauses, procedurale en declaratieve lezing van logisch programma's, multidirectionaliteit
  • Prolog: zuivere Prolog, negatie, (recursieve) datastructuren, ingebouwde predicaten, metapredicaten
  • programmeertechnieken: data (feiten, termen), accumulatoren, memoizatie, door falen aangedreven iteratie, zoekproblemen in eindige toestandsruimten, metavertolkers, datastructuren met variabelen
  • een functionele programmeertaal, bv. Haskell
  • basisconcepten: functie, reductiestrategieën, call-by-need, lui/ strikt
  • Haskell: algebraische datatypes, hogere-ordefuncties, mono- en polymorfe types, type classes, currying
  • programmeertechnieken: structurele recursie, oneindige processen, list comprehension, pure functies en monadische input/output
  • type-inferentie
  • inzicht in de geschiedenis van, het onderzoek rond, en het landschap van declaratieve talen
  • uitvoeringsmechanismen voor declaratieve talen en ontwikkelingen daaromtrent

Handboek: Soar with Haskell, T. Schrijvers, Packt Publishing, 978-1805128458.
Eigen cursusmateriaal.

Flipped classroom.

3 sp. Declaratieve talen: oefeningen & practica (B-KUL-G0Q46a)

3 studiepuntenNederlandsWerkvorm: Practicum24 urenEerste semester
POC Informatica

De oefeningen worden afgestemd op het programmeren in de aangeleerde declaratieve talen.

Een tiental oefenzittingen waarin de studenten onder begeleiding van een assistent de aangeleerde stof verder verwerken door zelf programma's te schrijven in de aangeleerde talen.  De oefeningen worden gemaakt op computer.

Evaluatieactiviteiten

Evaluatie: Declaratieve talen (B-KUL-G2Q45b)

Type : Examen tijdens de examenperiode
Evaluatievorm : Schriftelijk
Vraagvormen : Open vragen
Leermateriaal : Cursusmateriaal


Het examen is open boek en wordt op computer gemaakt.

Indien de evaluatie aantoont dat de student één of meerdere doelstellingen van het opleidingsonderdeel onvoldoende heeft bereikt, kan het globale resultaat afwijken van het gewogen gemiddelde van de onderdelen.