Functionele en logische programmeertalen

advertisement
Studiefiche
Vanaf academiejaar 2015-2016
Functionele en logische programmeertalen (C003034)
Cursusomvang
(nominale waarden; effectieve waarden kunnen verschillen per opleiding)
Studiepunten 6.0
Studietijd 165 u
Contacturen
45.0 u
Aanbodsessies en werkvormen in academiejaar 2016-2017
A (semester 1)
hoorcollege
30.0 u
werkcollege: geleide oefeningen
15.0 u
Lesgevers in academiejaar 2016-2017
Scholliers, Christophe
WE02
Aangeboden in onderstaande opleidingen in 2016-2017
Master of Science in de informatica
Master of Science in de wiskundige informatica
Verantwoordelijk lesgever
stptn
6
6
aanbodsessie
A
A
Onderwijstalen
Nederlands
Trefwoorden
programmeertalen, functioneel programmeren, logisch programmeren, hogere-orde
functies, polymorpfisme, monads, type classes, luie uitvoering, unificatie, backtracking,
metavertolkers, Prolog, Haskell
Situering
De student verdiept zich in de functionele en logische programmeerparadigma's. Het is
de bedoeling dat zij/hij:
• zich het praktisch gebruik van een functionele en een logische programmeertaal
• eigen maakt;
• zich meester maakt van de concepten, programmeertechnieken en datastructuren
• die gangbaar zijn in deze paradigma's;
• inzicht verwerft in de verbanden tussen functioneel programmeren en objectgericht
• programmeren
• inzicht verwerft in de onderliggende evaluatiemechanismen van deze talen.
Inhoud
1 Functioneel porgrammeren
1 • taal: Haskell grondig, noties van andere functionele talen
1 • uitvoeringsmechanismes: luie uitvoering
1 • typesysteem: algebraische datatypes, polymorfisme, type classes
1 • hogere-orde functies, continuaties, functors, monads
1 • datastructuren: onwijzigbare, oneindige
2 Logisch programmeren
1 • taal: Prolog grondig, noties van andere logische talen
1 • uitvoeringsmechanismes: unificatie, backtracking, uitgestelde uitvoering
1 • datastructuren: met open einde, cyclische
1 • metavertolkers
1 • programmeren met constraints
(sommige onderwerpen niet elk jaar)
Begincompetenties
Kunnen programmeren in een programmeertaal door bijvoorbeeld het vak
Programmeren/Programmeren 1 gevolgd te hebben.
Eindcompetenties
1 De student kan kleine en middelgrote programma's schrijven in een functionele en
(Goedgekeurd)
1
1 logische programmeertaal.
2 Zij/hij kan de gangbare concepten en datastructuren uit deze talen praktisch
1 toepassen.
Creditcontractvoorwaarde
Toelating tot dit opleidingsonderdeel via creditcontract is mogelijk mits gunstige beoordeling
van de competenties
Examencontractvoorwaarde
Dit opleidingsonderdeel kan niet via examencontract gevolgd worden
Didactische werkvormen
Hoorcollege, werkcollege: geleide oefeningen
Toelichtingen bij de didactische werkvormen
Hoorcolleges
Werkcolleges
Programmeerpractica
Elektronische leeromgeving
Leermateriaal
Cursusnota's
Website
Geraamde totaalprijs: 0 EUR
Referenties
• Programming in Haskell, Graham Hutton, University of Nottingham, Cambridge
• University Press, January 2007.
• Simon Thompson: Haskell: The Craft of Functional Programming, Second Edition,
• Addison-Wesley, 507 pages, paperback, 1999.
• Bryan O'Sullivan, Don Stewart, and John Goerzen: Real World Haskell, Paperback:
• 700 pages, O'Reilly, November 2008.
• http://www.haskell.org/haskellwiki/Haskell_in_education
• Prolog Programming for Artificial Intelligence, Ivan Bratko, Addison Wesley, third
• edition 2001.
• Constraint Logic Programming using Eclipse, Krzysztof R. Apt, Mark Wallace,
• Cambridge University Press, 2006.
• Prolog Programming, Roman Bartak, http://kti.ms.mff.cuni.cz/~bartak/prolog/index.
• html
Vakinhoudelijke studiebegeleiding
Begeleide werkcolleges en practica
Elektronische leeromgeving
Evaluatiemomenten
periodegebonden en niet-periodegebonden evaluatie
Evaluatievormen bij periodegebonden evaluatie in de eerste examenperiode
Schriftelijk examen met open vragen
Evaluatievormen bij periodegebonden evaluatie in de tweede examenperiode
Schriftelijk examen met open vragen
Evaluatievormen bij niet-periodegebonden evaluatie
Mondeling examen, werkstuk, vaardigheidstest
Tweede examenkans in geval van niet-periodegebonden evaluatie
Examen in de tweede examenperiode is mogelijk
Toelichtingen bij de evaluatievormen
Niet-periodegebonden evaluatie: werkstuk, vaardigheidstest, mondelinge verdediging.
Tweede examenkans in geval van niet-periodegebonden evaluatie: kan hernomen
worden mits nieuwe opgave
Eindscoreberekening
Niet-periodegebonden evaluatie (50%) + periodegebonden evaluatie (50%).
De score voor de niet-periodegebonden evaluatie telt enkel mee indien men een
voldoende haalt op de periodegebonden evaluatie.
(Goedgekeurd)
2
Download