by shigemk2

当面は技術的なことしか書かない

対話によるCommon Lisp入門 24 勝手に関数を作ってみよう

[39]> (defun butlast$ (x)
(reverse (rest (reverse x))))
BUTLAST$
[40]> (butlast$ '(a b c d e))
(A B C D)
[41]> (butlast '(a b c d e))
(A B C D)
(butlast$ '(a b c d e))
= (butlast$ (A B C D E))
= (reverse (rest (reverse '(A B C D E))))
= (reverse (rest (E D C B A)))
= (reverse (D C B A))
= (A B C D)
=> (A B C D)