The risks and benefits of teaching purely functional programming in first year

  • Authors:
  • Manuel M. T. Chakravarty;Gabriele Keller

  • Affiliations:
  • School of Computer Science and Engineering, University of New South Wales, NSW, Australia (e-mail: chak@cse.unsw.edu.au);School of Computer Science and Engineering, University of New South Wales, NSW, Australia (e-mail: keller@cse.unsw.edu.au)

  • Venue:
  • Journal of Functional Programming
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

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.