common-lisp match défun


Exemple

En utilisant une correspondance de motif, on peut entrelacer la définition de fonction et la correspondance de motif, comme pour SML.

(trivia:defun-match fib (index)
  "Return the corresponding term for INDEX."
  (0 1)
  (1 1)
  (index (+ (fib (1- index)) (fib (- index 2)))))

(fib 5)
;; => 8