Gäller från och med: Spring 2017
Beslutad av: Professor Thomas Johansson
Datum för fastställande: 2017-03-22
Avdelning: Computer Science (LTH)
Kurstyp: Gemensam kurs, avancerad nivå och forskarnivå
Kursen ges även på avancerad nivå med kurskod: EDAN40
Undervisningsspråk: Swedish
The course gives an insight into how the functional programming often offers a possibility to write shorter and easier-to-understand programs than using the traditional imperative or object-oriented approaches.
Kunskap och förståelse
För godkänd kurs skall doktoranden
Färdighet och förmåga
För godkänd kurs skall doktoranden
Värderingsförmåga och förhållningssätt
För godkänd kurs skall doktoranden have learnt to appreciate the role of program code as a communication medium between people
The philosophy of functional languages. The programming language Haskell. Language constructs and idioms. Higher-order functions. Lazy evaluation and infinite data structures. Monads and monadic computations. Polymorphic type systems and type classes. Type analysis and type inference
Simon Thompson: Haskell, The Craft of Functional Programming. Addison Wesley, 2011, ISBN: 978-0-201-88295-7. 3rd edition. Recommended reference. Graham Hutton: Programming in Haskell. Cambridge University Press, 2007, ISBN: 978-0-521-69269-4. Recommended reference. Bryan O'Sullivan, John Goerzen and Don Stewart: Real World Haskell. O'Reilly, 2008, ISBN: 978-0-596-51498-3. Recommended reference.
Undervisningsformer: Föreläsningar, laborationer
Examinationsform: Skriftlig tentamen
Betygsskala: Underkänd, godkänd
Examinator:
Förutsatta förkunskaper: EDAA01 Programming - Second Course or EDAA30 Programming in Java - Second Course
Kursansvariga:
Hemsida: http://cs.lth.se/edan40-functional-programming/