CASE - разбор вариантов

(case проверка
  (вариант-или-список1 form11...form1n)
  (вариант-или-список2 form21...form2n)
  ...
  ({otherwise | t} form1...formn))

вариант-или-список ::= атом | (атом ...)

  1. Вычисляет форму проверка.
  2. Сравнивает её значение со всеми вариантами с помощью eql или member;
    варианты не оцениваются.
  3. Пусть первый успешно сопоставленный вариант имеет номер i. Тогда
  4. Когда вариант не найден:
Пример
(case (+ 2 3) 
  ((1 2 3 4) "слишком много")
  (5 "то, что нужно")
  ((6 7) "слишком мало")
  (zero "вариант-символ")
  ((nil) "пустая проверка") ; ибо nil трактуется как ()
  (otherwise "довольствуемся умолчанием"))
"то, что нужно"