;;; .EnTete "Le-Lisp (c) version 15.2" " " "The Le-Lisp Benchmarks (1)"
;;; .EnPied "fib20.ll" "%" " "
;;; .SuperTitre "The Le-Lisp Benchmarks (1)"
;;;
;;; .Centre "*****************************************************************"
;;; .Centre " Ce fichier est en lecture seule hors du projet ALE de l'INRIA.  "
;;; .Centre " Il est maintenu par ILOG SA, 2 Avenue Gallie'ni, 94250 Gentilly "
;;; .Centre " (c) Le-Lisp est une marque de'pose'e de l'INRIA                 "
;;; .Centre "*****************************************************************"
;;;
;;; .Centre "$Header: fib20.ll,v 1.2 88/10/29 21:40:56 chaillou Exp $"

;;; (1) FIB -- The Fibonnacci Function.


(defun check-fib20 ()
   (check-value '(test-fib20 1) 6765))

(defun meter-fib20 ()
   (perform-meter '(fib 20) 'fib20))

(defun test-fib20 (rep-factor)
   (if (eq rep-factor 1)
       (fib 20)
       (repeat rep-factor (fib 20))))


(defun fib (n)
   (cond ((eq n 1) 1)
         ((eq n 2) 1)
         (t (add (fib (sub1 n)) (fib (sub n 2))))))