Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

macar関数

mapcar関数はリストに対し特定の命令を連続して実行して新しいリストを用意する関数です。

実際のところ

(mapcar - '(4 5 6) '(1 2 3) )
;; (3 3 3)

二つ目のリストを省略し、lambdaを使うことも

1213>  (mapcar (lambda (x) (+ x 1)) '(1 2 3 4 5))
;; (2 3 4 5 6);;(1 4 9 16 25)

Lispなので、関数は非破壊です。

1213>  (defvar ownlist '(1 2 3))
;; ownlist

1204>  (mapcar - ownlist '(1 2 3) )
;; (0 0 0)

1204> (car ownlist)
;; 1