INF2810 – Funksjonell programmering
Beskrivelse av emnet
Timeplan, pensum og eksamensdato
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
- 10 sp mot HUMIT2710 – Funksjonell programmering (nedlagt)
- 10 sp mot HUMIT2710MN – Funksjonell programmering (nedlagt)
- Innholdet er dekket av det tidligere SLI230.
- 2 sp overlapp mot tidligere IN211.
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 澳门葡京手机版app下载 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.