SluitenHelpPrint
Switch to English
Cursus: INFOAFP
INFOAFP
Advanced functional programming
Cursus informatie
CursuscodeINFOAFP
Studiepunten (EC)7,5
Cursusdoelen
This course builds upon knowledge gained in the introductory courses on functional programming and languages and compilers. Using Haskell as our language of choice, we will look at several advanced functional programming techniques, patterns, libraries and tools. Many of the research projects inside the department make use of functional programming, and one goal of this course is to equip you with sufficient knowledge in order to participate in such projects.
Inhoud
Here are a few topics that the course will most likely cover:
  • Development
    • Tools
    • Testing
    • Debugging
    • Profiling
  • Libraries
    • Data Structures
    • Interfacing to other programming languages
    • Monads, monad transformers, arrows and applicative functors
    • Embedded domain-specific languages
  • Language features and extensions
    • Multi-parameter type classes and functional dependencies
    • Type families
    • Kinds
    • Generalized Algebraic Data Types (GADTs)
    • Existential types
    • Higher-rank polymorphism
Typically we will read some papers from the recent literature and a number of classical papers.

 
SluitenHelpPrint
Switch to English