From: Tom Kramer
Subject: April foolery
Date:
Message-ID: <985@graceland.cme.nist.gov>
What does this do? How does it work? How long does it take?
(defun bleep (arg)
(cond ((eq arg 1) 1)
((numberp arg)
(bleep (bleep (list arg (list (list (- arg 1)))))))
((and (numberp (car arg)) (zerop (car arg)))
nil)
((and (numberp (car arg)) (numberp (cadr arg)))
(apply #'+ (mapcar #'(lambda (zz) (bleep (cdr arg))) arg)))
((and (numberp (car arg)) (null (cdr arg)))
1)
((numberp (car arg))
(cons (cadr arg) (bleep (list (1- (car arg)) (cadr arg)))))
((listp (caar arg))
(bleep (mapcar #'bleep arg)))
((not (eq (caar arg) 1))
(bleep (bleep (list (bleep (caar arg))
(list (list (- (caar arg) 1)))))))
(t 1)))