anchor.diff:  
   (define-test test-many-kinds-params
       "CL provides the programmer with more than enough rope to hang himself."
  -   (assert-equal (func-with-funky-parameters 1) ___)
  -   (assert-equal (func-with-funky-parameters 1 :b 2) ___)
  -   (assert-equal (func-with-funky-parameters 1 :b 2 :c 3) ___)
  -   (assert-equal (func-with-funky-parameters 1 :c 3 :b 2) ___))
  +   (assert-equal (func-with-funky-parameters 1) '(1 nil 1 nil))
  +   (assert-equal (func-with-funky-parameters 1 :b 2) '(1 2 1 (:b 2)))
  +   (assert-equal (func-with-funky-parameters 1 :b 2 :c 3) '(1 2 3 (:b 2 :c 3)))
  +   (assert-equal (func-with-funky-parameters 1 :c 3 :b 2) '(1 2 3 (:c 3 :b 2))))
   
   
   ;; Note that &rest parameters have to come before &key parameters.
  
positive.code:    (assert-equal 19 ((lambda (a b) (+ a b)) 10 9))
    (let ((my-function))
      (setf my-function (lambda (a b) (* a b)))
      (assert-equal ___ (funcall my-function 11 9)))
    (let ((list-of-functions nil))
      (push (lambda (a b) (+ a b)) list-of-functions)
      (push (lambda (a b) (* a b)) list-of-functions)
      (push (lambda (a b) (- a b)) list-of-functions)
      (assert-equal ___ (funcall (second list-of-functions) 2 33))))
  
  (define-test test-lambdas-can-have-optional-params
     (assert-equal ___ ((lambda (a &optional (b 100)) (+ a b)) 10 9))
     (assert-equal ___ ((lambda (a &optional (b 100)) (+ a b)) 10)))
  
  
  ; returns sign x
  
negative.code:    (assert-eq 18 (some-named-function 7 11))
     "flet binds a function to a name within a lexical environment"
     (flet ((some-named-function (a b) (* a b)))
       (assert-equal 77 (some-named-function 7 11)))
     (assert-equal 18  (some-named-function 7 11)))
  
  
  ; borrowed from Common Lisp The Language chapter 5.2.2
  