Abstract
Over the past decade enrollments in Computer Science undergraduate programs have drastically dropped while simultaneously seeing demand for computer scientists in the job market increase. The reason for this disconnect is, in part, due to the perception new potential students have of programming as a dull activity requiring no creativity, very little social interaction, and endless hours of coding in front of a monitor. The question then is how can we capture the imagination of new students and perk their interest in a way that gets them excited while at the same time giving them a solid foundation in computer programming and Computer Science. This article puts forth the thesis that developing video games using functional programming should be a new trend in the CS1 classroom. The article describes the approach implemented at Seton Hall University using video game programming and Felleisen et al.’s textbook How to Design Programs. The first-year programming curriculum is briefly described and how to get students interested in programming through the development of a Space-Invaders-like game is illustrated. The presented development gives the reader a clear sense of how to use functional video games in the first semester classroom.
Access provided by Autonomous University of Puebla. Download to read the full chapter text
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Achten, P.: Teaching Functional Programming with Soccer-Fun. In: FDPE 2008: Proceedings of the 2008 International Workshop on Functional and Declarative Programming in Education, pp. 61–72. ACM, New York (2008)
Courtney, A., Nilsson, H., Peterson, J.: The Yampa Arcade. In: Haskell 2003: Proceedings of the 2003 ACM SIGPLAN Workshop on Haskell, pp. 7–18. ACM, New York (2003)
Felleisen, M., Findler, R.B., Fisler, K., Flatt, M., Krishnamurthi, S.: How to Design Worlds (2008), http://world.cs.brown.edu/1/
Felleisen, M., Findler, R.B., Flatt, M., Krishnamurthi, S.: How to Design Programs: An Introduction to Programming and Computing. MIT Press, Cambridge (2001)
Felleisen, M., Findler, R.B., Flatt, M., Krishnamurthi, S.: A functional i/o system or, fun for freshman kids. In: Hutton, G., Tolmach, A.P. (eds.) ICFP, pp. 47–58. ACM, New York (2009)
Felleisen, M., Krishnamurthi, S.: Viewpoint: Why Computer Science Doesn’t Matter. Communications of the ACM 52(7), 37–40 (2009)
Harris, A.: The L Line, The Express Line to Learning. In: Game Programming, Wiley Publishing, Inc., Hoboken (2007)
Lacey, T.A., Wright, B.: Occupational Employment Projections to 2018. Monthly Labor Review, 82–123 (November 2009)
Lüth, C.: Haskell in Space: An Interactive Game as a Functional Programming Exercise. J. Funct. Program 13(6), 1077–1085 (2003)
Money Magazine and Salary.com. Best Jobs in America. Money Magazine (2009)
McGugan, W.: Beginning Game Development with Python and Pygame: From Novice to Professional. Apress, Berkeley (2007)
The Joint Task Force on Computing Curricula. Computing Curricula 2001 Computer Science (December 2001), http://www.acm.org/education/education/education/curric_vols/cc2001.pdf
CS2008 Review Taskforce. Computer Science Curriculum 2008: An Interim Revision of CS 2001 (December 2008), http://www.acm.org//education/curricula/ComputerScience2008.pdf
Zweben, S.: 2007-2008 Taulbee Survey. Computing Research News (May 2009)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Morazán, M.T. (2011). Functional Video Games in the CS1 Classroom. In: Page, R., Horváth, Z., Zsók, V. (eds) Trends in Functional Programming. TFP 2010. Lecture Notes in Computer Science, vol 6546. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-22941-1_11
Download citation
DOI: https://doi.org/10.1007/978-3-642-22941-1_11
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-22940-4
Online ISBN: 978-3-642-22941-1
eBook Packages: Computer ScienceComputer Science (R0)