The Department of Computer Science & Engineering
cse@buffalo

CSE202: Programming in Lisp

Course
Grades
Email

Welcome

Policies
    Grades
    Inc
    Intgrty

Preface
Part I
  Chap 1
  Chap 2
  Chap 3
  XEmacs
  Chap 4
  Chap 5
  Chap 6
  Chap 7
  Chap 8
  Chap 9
Part II
  Chap 10
  Chap 11
  Chap 12
  Chap 13
  Chap 14
  Chap 15
  Chap 16
  Chap 17
  Chap 18
  Chap 19
  Chap 20
  Chap 21
  Chap 22
  Chap 23
Part III
  Chap 24
  Chap 25
  Chap 26
  Chap 27
  Chap 28
  Chap 29
  Chap 30
  Chap 31
  Chap 32
CHAPTER 22: THE APPLICATOR
Corrections
  1. Page 160, line 9: Change \&rest to &rest.

  2. Page 161, line -13: Change LISP's to LISP.

Notes
  1. Read Chapter 22

  2. Do Exercises 22.1 - 22.7, 22.10, and 22.11 as you feel you need to in order to understand the material of this chapter.

  3. Do Exercise 22.9, and compare your answer with the one in Appendix A.

  4. Create a file called ch22.cl with the following two function definitions in the ch22 package.
    1. Function xprod as specified in Exercise 22.8, but represent a set as a standard Lisp list. For example,
      > (xprod '(a b) '(c d e))
      ((A C) (A D) (A E) (B C) (B D) (B E))
      
      You should use mapcar instead of recursion. For example, you should not call xprod from within xprod.

    2. The function ch22::union (shadowing common-lisp:union), as described in the notes to Chapter 20. However, use the techniques of Chapter 22 instead of the techniques of Chapter 20.

    Submit your ch22.cl

Next

Copyright © 1999, 2000 by Stuart C. Shapiro. All rights reserved.

Stuart C. Shapiro <shapiro@cse.buffalo.edu>