配列の各要素に関数を適用し配列を作成する - lisp-cookbook-ja/common-lisp GitHub Wiki
配列の各要素に関数を適用し配列を作成する
map はシークエンス全般に使用できます。第1引数にシークエンスの型を指定することにより任意のシークエンスが作成可能です。
(let ((v (vector 1 2 3 2 1 2 3 2 1)))
(map 'vector #'1+ v ))
;=> #(2 3 4 3 2 3 4 3 2)
また、map-into は、第1引数にシークエンスそのものを指定することにより、結果を元のシークエンスに代入して返します。 元のシークエンスは破壊的に変更されます。
(let ((v (vector 1 2 3 2 1 2 3 2 1)))
(map-into v #'1+ v ))
;=> #(2 3 4 3 2 3 4 3 2)