The Risks and Benefits of Teaching Purely Functional Programming in First Year

Manuel M. T. Chakravarty and Gabriele Keller.

Journal of Functional Programming 14, pp 113-123, 2004. An earlier version of this paper was presented at Functional and Declarative Programming in Education (FDPE02).

Abstract
We argue that teaching purely functional programming as such in freshman courses is detrimental to both the curriculum as well as to promoting the paradigm. Instead, we need to focus on the more general aims of teaching elementary techniques of programming and essential concepts of computing. We support this viewpoint with experience gained during several semesters of teaching large first-year classes (up to 600 students) in Haskell. These classes consisted of computer science students as well as students from other disciplines. We have systematically gathered student feedback by conducting surveys after each semester. This article contributes an approach to the use of modern functional languages in first year courses and, based on this, advocates the use of functional languages in this setting.

JFP online version
[There is also a PostScript preprint (11 pages), but please support the Journal of Functional Programming by purchasing the article, or better get your institution to subscribe to the journal.]

This page is part of Manuel Chakravarty's web stuff.