anchor.diff:          (cons (car xs) store)))
       (reverse store)))
   
  -
  +;; another alternative is to use MAPCAN, which is similar to MAPCAR except that
  +;; it appends the results it gets for each element, rather than putting them
  +;; into a list. Therefore MAPCAN's procedure should output a list. Don't worry
  +
  +(defun rif2 (test xs)
  +  (mapcan
  +    #'(lambda (x)
  +        (if (not (funcall test x)) (list x)))
  +    xs))
  +
  +
  +;;
  +;; Question
  +;;
  +;; Define a procedure that takes an integer n and gives a list of n random
  +;; single digit numbers. Use the built-in RANDOM, MAKE-LIST, MAPCAR and LAMBDA
  +;; in your solution. Check the definition of the builtins you are not
  +;; familiar with from reference books on the website or on the web.
  +;;
  +
  +(defun n-rand (n)
  +  "return a list of n single digit random numbers"
  +  (mapcar
  +    #'(lambda (x) (random x))
  +    (make-list n :initial-element 10)))
  +
  +;;
  +;; Question
  +;;
  +;; Define a procedure that takes two lists: a list N of numbers and a list P of
  +;; symbols with function bindings, i.e. symbols used to define some single
  +;; argument mathematical procedure with DEFUN. Your procedure should return a
  +;; list with the same size as N, whose elements are lists consisting of values
  +;; obtained by applying all the procedures in P to the corresponding element in
  +;; N. For example, if you provide your procedure with a list of symbols naming
  +;; square, absolute value and float functions, e.g. (sqr abs float), and the
  +;; list (1 -2 3), it should return: ((1 1 1.0) (4 2 -2.0) (9 3 3.0)) You are
  +;; NOT allowed to use any procedure (built-in or user-defined) other than #',
  +;; DEFUN, MAPCAR, LAMBDA and FUNCALL.
  +;;
  +
  +(defun sqr (x) (* x x)) ; for testing
  +
  +(defun foo (nlist flist)
  +  (mapcar
  +    #'(lambda (x)
  +        (mapcar
  +          #'(lambda (y)
  +              (funcall y x))
  +          flist))
  +    nlist))
   
   ;;
   ;; Question
  
positive.code: ;;
  ;; Question
  ;;
  ;; Define your own REMOVE-IF.
  ;;
  
  
negative.code:         (cons (car lst) store)))
      (reverse store)))
  
  ;;
  ;; Question
  ;;
  