SUBJECT

Title

Functional languages

Type of instruction

lecture + practical

Level

master

Part of degree program
Credits

5

Recommended in

Semester 2/4

Typically offered in

Spring semester

Course description
  • Algebraic types, type classes.

  • Higher-order types, existential types.

  • Uniqueness typing.

  • Dynamics, generic programming.

  • Purely functional data structures.

  • Parallel and distributed programming.

  • Combinators, combinator libraries.

  • Monadic programming.

  • Interactive programs, Functional Reactive Programming.

  • Embedded domain-specific languages.

Readings
  • Koopman, P., Plasmeijer, R., van Eekelen, M., Smetsers, S. Functional Programming in Clean,2002.

  • Plasmeijer, R., van Eekelen, M., von Groningen, J. Clean Language Report 2.2, December 2011.

  • Hudak, P. The Haskell School of Expression, 1st Edition.Cambridge University Press, February 2000.

  • Gibbons, J., de Moor, O. The Fun of Programming (Cornerstones ofComputing).Palgrave Macmillan, June 2005.

  • Hutton, G. Programming in Haskell.Cambridge University Press, 2007.

  • Thompson, S. Haskell: The Craft of Functional Programming, 3rd Edition.Addison-Wesley, June 2011.

  • Marlow, S. Parallel and Concurrent Programming in Haskell. Proc. of the 4th Central European Functional Programming School, CEFP 2011, Budapest, Hungary, June 2011, Revised Selected Papers.

 

Recommended literature:

  • O'Sullivan, B., Stewart, D., Goerzen, J. Real World Haskell, 1st Edition.O'Reilly Media, November 2008.
  • Lipovaca, M. Learn You a Haskell for Great Good! –A Beginner's Guide, 1st Edition.No Starch Press, April 2011.