anchor.diff:  (defmacro >case (expr &body clauses)
     (with-gensyms (v)
       `(let ((,v ,expr))
  -       (cond ,@(mapcar (p #'>case-cl-expand v) clauses)))))
  +       (cond ,@(mapcar (p (>case-cl-expand v)) clauses)))))
   
   ;;; July 30th 2012, chiku
   ;;; It's ported from LL(k) project.
  
positive.code: (defun int-compositions (n &key (len) (parts-max n) (parts-min 1))
    (labels ((rec  (n max lst)
               (cond ((= n 0) lst)
                     ((= max 1) (mapcar (p #'cons n) lst))
                     (t (mapcan
                          (lambda (i) (rec (- n i) (1- max) (mapcar (p #'cons i) lst)))
                          (iota n :start 1))))))
      (let ((parts-max (if len len parts-max)) (parts-min (if len len parts-min)))
        (remove-if-not (lambda (x) (<= parts-min (length x)))
  
negative.code:   (let ((tail-pos (position-list tail-mark seq :key key :test test)))
      (values
        (mapcar
          (p (subseq seq))
          (cons 0 (mapcar #'1+ tail-pos))
          (if mark-discard?  tail-pos (mapcar #'1+ tail-pos)))
        (if tail-pos (subseq seq (1+ (last1 tail-pos))) seq))))
  