;;; 冗長な記法 (mbe-defrules my-push1 ((newelt place) (setq place (cons newelt place)))) ;;; 引数の形式が1つなのでシンプルな記法でよい (mbe-defrule my-push2 (newelt place) (setq place (cons newelt place))) (let (x y z) (push 1 x) ; => (1) x ; => (1) (my-push1 1 y) ; => (1) y ; => (1) (my-push2 1 z) ; => (1) z ; => (1) )