Dette emnet er erstattet av IN2040 – Funksjonell programmering.

Timeplan, pensum og eksamensdato

Velg semester

Kort om emnet

Programmering i et funksjonelt programmeringsspråk. Rekursjon. Abstrakte datastrukturer. Datastyrt programmering, memoisering, objektorientering, lister og strømmer. Styrker og svakheter ved funksjonell programmering sammenlignet med imperativ programmering. Semantikk for evaluering av funksjonskall og interpretering av funksjonelle programmer.

Hva lærer du?

Etter å ha fullført INF2810

  • behersker du grunnleggende teknikker fra paradigmet for funksjonell programmering.
  • har du trening i å bruke abstraksjon for å strukturere programmer.
  • kan du forklare og bruke rekursjon generelt, og skille mellom rekursive og iterative prosesser.
  • kan du skrive og bruke høyereordens prosedyrer.
  • behersker du teknikker for utsatt evaluering for å jobbe med uendelige datastrukturer som f.eks. strømmer.
  • har du innsikt i ulike modeller for hvordan kode evalueres.

Opptak og adgangsregulering

Studenter må hvert semester søke og få plass på undervisningen og melde seg til eksamen i Studentweb.

Dersom du ikke allerede har studieplass ved UiO, kan du søke opptak til våre studieprogrammer, eller søke om å bli enkeltemnestudent.

Forkunnskaper

Obligatoriske forkunnskaper

I tillegg til generell studiekompetanse eller realkompetanse må du dekke spesielle opptakskrav:

  • Matematikk R1 eller Matematikk (S1+S2)

De spesielle opptakskravene kan også dekkes med fag fra videregående opplæring før Kunnskapsløftet, eller på andre måter. Les mer om spesielle opptakskrav.

HUMIT1700 – Grunnkurs i programmering for humanister (nedlagt)/INF1000 – Grunnkurs i objektorientert programmering (videreført)/INF1100 – Grunnkurs i programmering for naturvitenskapelige anvendelser (videreført)

Overlappende emner

Undervisning

2 timer forelesning og 2 timer gruppe hver uke. I tillegg gis det veiledning av studentene ved datamaskin. Det kreves gjennomføring av obligatoriske oppgaver. Den første oppgaven skal løses individuelt. De tre neste skal løses i grupper på 2-3 studenter. Les mer om krav til innlevering av oppgaver, gruppearbeid og lovlig samarbeid under retningslinjer for obligatoriske oppgaver.

Eksamen

4 timers skriftlig digital eksamen. Alle obligatoriske oppgaver må være bestått for å kunne gå opp til eksamen.

Hjelpemidler

Ingen hjelpemidler er tillatt.

Karakterskala

Emnet bruker karakterskala fra A til F, der A er beste karakter og F er stryk. Les mer om karakterskalaen.

Begrunnelse og klage

Adgang til ny eller utsatt eksamen

Studenter som dokumenterer gyldig fravær fra ordinær eksamen, kan ta utsatt eksamen i starten av neste semester.

Det tilbys ikke ny eksamen til studenter som har trukket seg under ordinær eksamen, eller som ikke har bestått.

Trekk fra eksamen

Det er mulig å ta eksamen i emnet inntil tre ganger. Dersom du trekker deg fra eksamen etter fristen eller under eksamen, bruker du et eksamensforsøk.

Som eksamensforsøk i dette emnet teller også forsøk i følgende tilsvarende emner: HUMIT2710 - Funksjonell programmering, HUMIT2710MN - Funksjonell programmering og SLI230.

Annet

Det er sterkt anbefalt å møte på første forelesning fordi det vil bli gitt viktig informasjon.

Fakta om emnet

Studiepoeng

10

Nivå

Bachelor

Undervisning

Hver vår

Undervist siste gang vår 2018, erstattes av IN2040 høsten 2019.

Eksamen

Hver vår

Undervisningsspråk

Norsk