Sök i programutbudet

Använd sökfunktionen för att leta efter kurser och program i Chalmers utbildningsutbud. Den programplan och utbildningsplan som avser dina studier är i allmänhet från det läsår du började dina studier.

​​​​​​​​​​​​​

Kursplan för

Läsår
TDA452 - Functional programming
 
Kursplanen fastställd 2012-02-18 av programansvarig (eller motsvarande)
Ägare: TKDAT
7,5 Poäng
Betygskala: TH - Fem, Fyra, Tre, Underkänt
Utbildningsnivå: Grundnivå
Huvudområde: Datateknik, Informationsteknik
Institution: 37 - DATA- OCH INFORMATIONSTEKNIK


Undervisningsspråk: Engelska
Sökbar för utbytesstudenter
Blockschema: C

Modul   Poängfördelning   Tentamensdatum
Lp1 Lp2 Lp3 Lp4 Sommarkurs Ej Lp
0111 Laboration 3,0 hp Betygskala: UG   3,0 hp    
0211 Tentamen 4,5 hp Betygskala: TH   4,5 hp   18 Dec 2012 em V,  06 Apr 2013 fm V

I program

TKITE INFORMATIONSTEKNIK, CIVILINGENJÖR, Årskurs 3 (valbar)
MPALG COMPUTER SCIENCE - ALGORITHMS, LANGUAGES AND LOGIC, MSC PROGR, Årskurs 1 (valbar)

Examinator:

Professor  David Sands


Ersätter

TDA450   Functional programming TDA451   Functional programming

Kursutvärdering:

http://document.chalmers.se/doc/eb6a4dc6-f748-4afd-9bc1-5f516ccd5e71


Behörighet:

För kurser inom Chalmers utbildningsprogram gäller samma behörighetskrav som till de(t) program kursen ingår i.

Kursspecifika förkunskaper

The course assumes that the participants are familiar with basic notions from discrete mathematics and logic. Previous programming experience and basic knowledge of data structures and algorithms are also assumed. The course cannot be included in a degree which contains (or is based on another degree which contains) either the course TDA555 (Introduction to functional programming) or the course TDA451 (Functional Programming).

Syfte

This course introduces a functional programming language and related concept to students that already have some knowledge in programming. The primary goal is to enable students to write realistic (small- to medium-size) programs, while introducing some of the fundamental concepts of computer science.

Lärandemål (efter fullgjord kurs ska studenten kunna)

1. Knowledge and understanding,

- describe the difference between functional programming and other mainstream programming paradigms,
- describe the basic elements of the paradigm such as higher-order functions and user-defined data types, and
their realisation in the Haskell programming language.

2. Skills and abilities,

- write small to medium-sized functional programs for a variety of applications;
- exploit a variety of programming techniques typical in functional programming, such as: use of recursion, modelling with recursive datatypes, abstraction and reuse with the help of higher order functions and monads;

3. Judgement and approach.

- identify the strengths and possible weaknesses of the functional programming paradigm.

Innehåll

In this course the student will learn about functional programming through the Haskell programming language. Concrete topics encountered in the course include:
- functions as first-class values
- algebraic and abstract data types
- polymorphism and classes
- testing functional programs
- lazy evaluations and infinite objects
- monads

Organisation

Teaching is through regular lectures and self-study exercises, supported by drop-in consultation times and on-line help.

Litteratur

See the web page of the course.

Examination

Written exam and compulsory laboratory exercises.


Sidansvarig Publicerad: on 24 jan 2018.