Racket Tutorial Exercises

Please read prologue, part 1, and part 2 of the second edition of How to Design Programs. Please also read Part IV, Part VI, Part VII, and Part VIII of the first edition.

If you want something quicker, go to the Quick guide to Racket and the guides on Web programming and systems programming.

Basic Racket
exercises | solutions
Lists and Trees
exercises | solutions
Higher-order Functions
exercises | solutions

Assignments

Please be sure to have read the syllabus. Pay special attention to the honesty policy and to teamwork.

Team Assignment Out Due, 11:59PM /course/cs173/bin/cs173handin
Solo Rudimentary Interpreter 09/03 09/09 rinterp
Solo Extended Interpreter 09/10 09/16 xinterp
Team prefs in: 09/08; announced: 09/12
1 Written: Substitution 09/13 09/19 subst-writ
1 Laziness 09/17 09/23 laziness-prog
1 Written: Laziness 09/22 09/30 laziness-writ
1 Web Programming in Racket 10/01 10/07 pltweb
Team prefs in: 10/01; announced: 10/05
2 Written: Continuations 10/06 10/14 writcont
2 Garbage Collection 10/15 10/28 gc-prog
2 Written: Garbage Collection 10/18 10/24 gc-writ
2 Type Checker 10/25 11/4 typecheck
Team prefs in: 10/22; announced: 10/26
3 Written: Typed 10/29 11/7 types-writ
3 Type Inference 11/5 11/18 typeinf-prog
3 Web sandboxes 11/15 11/21 websand
 
Solo Implementing Prolog 11/22 12/5 prolog