Avancerad funktionell programmering

5 hp

Kursplan, Avancerad nivå, 1DL450

Det finns en senare version av kursplanen.
Kod
1DL450
Utbildningsnivå
Avancerad nivå
Huvudområde(n) med fördjupning
Datavetenskap A1F
Betygsskala
Underkänd (U), godkänd (3), icke utan beröm godkänd (4), med beröm godkänd (5)
Fastställd av
Teknisk-naturvetenskapliga fakultetsnämnden, 18 mars 2010
Ansvarig institution
Institutionen för informationsteknologi

Behörighetskrav

120 hp, varav minst 40 hp i datavetenskap och 20 hp i matematik. Programmeringsteknik II och Funktionell Programmering I, alternativt Programkonstruktion, eller motsvarande.

Mål

För godkänt betyg ska studenten kunna

  • skriva program i Haskell, Erlang och Lisp,
  • använda högre ordningens funktioner, och fortsättningar (continuations),
  • använda lat evaluering och oändliga datastrukturer i Haskell,
  • använda Erlangs processbegrepp och lösa programmeringsuppgifter i Erlang genom att organisera dem som system av kommunicerande processer,
  • skriva program som interpreterar, transformerar och analyserar Lisp-program i Lisp, samt förstå och använda Lisps macro-begrepp,
  • genomföra och presentera ett större projekt i något av programspråken Haskell, Erlang eller Lisp.

Innehåll

Programspråken Haskell, Erlang och Lisp. Högre ordningens funktioner, fortsättningar, lat evaluering i Haskell, kommunicerande process i Erlang, program som data (metaprogrammering, aspektprogrammering) i Lisp.

Undervisning

Föreläsningar, mindre uppgifter, projektarbete.

I inledande föreläsningar presenteras de tre programspråken (eller paradigmna).

Studenterna genomför mindre uppgifter i alla programspråk, samt ett större projekt i ett av språken.

Läraren föreslår lämpliga projektuppgifter, men studenterna kan komma med egna förslag. Grupper om 1-4 studenter tillåts.

Examination

  • Redovisning (3 hp) Varje projekt ska redovisas och demonstreras i slutet av kursen. Redovisningen sker inför andra studenter. Varje student håller en egen redovisning, som betygsätts. I detta moment ingår även opposition på en redovisning.
  • Tentamen (2 hp) Tentamen tar upp den övergripande delen av kursen. I detta avsnitt ingår även mindre obligatoriska uppgifter om de olika programspråken som presenteras på kursen.

FÖLJ UPPSALA UNIVERSITET PÅ

facebook
instagram
twitter
youtube
linkedin