Functional Video Games in the CS1 Classroom
- 374 Downloads
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.
KeywordsVideo Game Teaching Language Functional Language Design Recipe Function Template
Unable to display preview. Download preview PDF.
- 2.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)Google Scholar
- 3.Felleisen, M., Findler, R.B., Fisler, K., Flatt, M., Krishnamurthi, S.: How to Design Worlds (2008), http://world.cs.brown.edu/1/
- 7.Harris, A.: The L Line, The Express Line to Learning. In: Game Programming, Wiley Publishing, Inc., Hoboken (2007)Google Scholar
- 8.Lacey, T.A., Wright, B.: Occupational Employment Projections to 2018. Monthly Labor Review, 82–123 (November 2009)Google Scholar
- 10.Money Magazine and Salary.com. Best Jobs in America. Money Magazine (2009)Google Scholar
- 11.McGugan, W.: Beginning Game Development with Python and Pygame: From Novice to Professional. Apress, Berkeley (2007)Google Scholar
- 12.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
- 13.CS2008 Review Taskforce. Computer Science Curriculum 2008: An Interim Revision of CS 2001 (December 2008), http://www.acm.org//education/curricula/ComputerScience2008.pdf
- 14.Zweben, S.: 2007-2008 Taulbee Survey. Computing Research News (May 2009)Google Scholar