Scheme or Lisp experience is a prerequisite for CSG 111/711. You should be able to solve problems like these (Exercises 1.15-1.16 of EOPL).

To learn Scheme, I recommend The Little Schemer by Friedman and Felleisen, and The Scheme Programming Language, by Dybvig. You may also wish to study the book How to Design Programs, by Felleisen et al.

If you've already used Scheme, Lisp, or some other functional language, a very condensed summary of the fragment of Scheme necessary for this course may be found here.

We offer a Scheme Placement Exam at the beginning of each semester to see whether or not you are ready to take CSG 111/711. You can prepare for this exam by studying the books mentioned above. See here for details.