Abstract
This paper introduces a problem solving method for teaching functional programming, based on Polya's How To Solve It, an introductory investigation of mathematical method. We first present the language independent version, and then show in particular how it applies to the development of programs in Haskell. The method is illustrated by a sequence of examples and a larger case study.
Preview
Unable to display preview. Download preview PDF.
References
David Barnes, Sally Fincher, and Simon Thompson. Introductory problem solving in computer science. In CTC97, Dublin, 1997.
Michael Clancy and Marcia Linn. Designing Pascal Solutions: Case studies using data structures. Computer Science Press, W. H. Freeman and Co., 1996.
Imre Lakatos. Proofs and Refuations: The Logic of Mathematical Discovery. Cambridge University Press, 1976. Edited by John Worrall and Elie Zahar.
John Peterson and Kevin Hammond, editors. Report on the Programming Language Haskell, Version 1.3. http://haskell.cs.yale.edu/haskell-report/haskell-report.html,1996.
G. Polya. How To Solve It. Princeton University Press, second edition, 1957.
Teaching functional programming: Opportunities & difficulties. http://www.ukc.ac.uk/CSDN/conference/96/Report.html,September 1996.
Simon Thompson. Haskell: The Craft of Functional Programming. Addison-Wesley, 1996.
Simon Thompson. Problem solving: recognising palindromes. http://www.ukc.ac.uk/computer-science/Haskell-craft/palindrome.html, 1996.
Simon Thompson. Programming it in Haskell. http://www.ukc.ac.uk/computer-science/Haskell-craft/ProgInHaskell.html, 1996.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1997 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Thompson, S. (1997). Where do I begin? A problem solving approach in teaching functional programming. In: Glaser, H., Hartel, P., Kuchen, H. (eds) Programming Languages: Implementations, Logics, and Programs. PLILP 1997. Lecture Notes in Computer Science, vol 1292. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0033853
Download citation
DOI: https://doi.org/10.1007/BFb0033853
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-63398-3
Online ISBN: 978-3-540-69537-0
eBook Packages: Springer Book Archive