Functional Baby Talk: Analysis of Code Fragments from Novice Haskell Programmers

Singer, J. and Archibald, B. (2018) Functional Baby Talk: Analysis of Code Fragments from Novice Haskell Programmers. Electronic Proceedings in Theoretical Computer Science, 270, pp. 37-51. (doi: 10.4204/EPTCS.270.3)

[img]
Preview
Text
162117.pdf - Published Version
Available under License Creative Commons Attribution.

1MB

Abstract

What kinds of mistakes are made by novice Haskell developers, as they learn about functional programming? Is it possible to analyze these errors in order to improve the pedagogy of Haskell? In 2016, we delivered a massive open online course which featured an interactive code evaluation environment. We captured and analyzed 161K interactions from learners. We report typical novice developer behavior; for instance, the mean time spent on an interactive tutorial is around eight minutes. Although our environment was restricted, we gain some understanding of Haskell novice errors. Parenthesis mismatches, lexical scoping errors and do block misunderstandings are common. Finally, we make recommendations about how such beginner code evaluation environments might be enhanced.

Item Type:Articles
Additional Information:First published in Simon Thompson (Eds.): Proceedings Sixth Workshop on Trends in Functional Programming in Education (TFPIE 2017), Canterbury, Kent UK, 22 June 2017, Electronic Proceedings in Theoretical Computer Science 270, pp. 37–51.
Status:Published
Refereed:Yes
Glasgow Author(s) Enlighten ID:Archibald, Dr Blair and Singer, Dr Jeremy
Authors: Singer, J., and Archibald, B.
College/School:College of Science and Engineering > School of Computing Science
Journal Name:Electronic Proceedings in Theoretical Computer Science
Publisher:Open Publishing Association
ISSN:2075-2180
Copyright Holders:Copyright © 2018 J. Singer and B. Archibald
First Published:First published in Electronic Proceedings in Theoretical Computer Science 270: 37-51
Publisher Policy:Reproduced under a Creative Commons License

University Staff: Request a correction | Enlighten Editors: Update this record