
Would it be possible to have destructure-case match against arbitrary, non-nil atoms (patch attached)? Matt -- "You do not really understand something unless you can explain it to your grandmother." — Albert Einstein. --- slime/swank.lisp.orig 2006-06-18 13:21:54.000000000 -0500 +++ slime/swank.lisp 2006-06-30 21:14:27.000000000 -0500 @@ -304,8 +304,8 @@ (,operands (cdr ,tmp))) (case ,operator ,@(loop for (pattern . body) in patterns collect - (if (eq pattern t) - `(t ,@body) + (if (and pattern (atom pattern)) + `(,pattern ,@body) (destructuring-bind (op &rest rands) pattern `(,op (destructuring-bind ,rands ,operands ,@body)))))