These programming projects are designed to complement the Composing Programs text, but they are freely available for any educational use. Each project comes with a comprehensive set of test cases so that students can check their work.
- The Hog
project highlights the use of iteration and higher-order functions from
Sections 1.1 - 1.6 of the text. Students build a simulator for a dice game
called Hog. This project is based on a 2010 SIGCSE Nifty
Assignment by Todd Neller.
- The Twitter Trends project
highlights the use of data abstraction, tuples, lists, and maps from
Sections 2.1-2.3 of the text. Students display U.S. maps colored by the
positive or negative sentiment of tweets that contain a search term. This
project was featured as a 2013 SIGCSE
Nifty Assignment.
- The Ants Vs SomeBees project
highlights the object-oriented programming paradigm from Section 2.4 of the
text. Students build a clone of the popular tower defense game, Plants Vs
Zombies. This project was featured as a 2014 SIGCSE
Nifty Assignment.
- The Scheme Interpreter
project asks students to implement an interpreter for a functional subset of
the Scheme programming language from Chapter 3. The project includes a
recursive art contest.
All projects are available for use under a Creative Commons Attribution-ShareAlike 3.0 Unported License.