mapcarで内積の計算
完全に寝ぼけていた.mapcarを
要素が値のふたつのリストの内積を取る場合,こんな感じで書ける
(defun inner-product (xlis ylis) (apply '+ (mapcar '* xlis ylis)))
mapcarは引数に複数リストを取ることもできる.その場合は,その数分のcarを第一引数の関数の引数にする.リストの長さが異なる場合は一番短いものに合わせる.
ということを学んだことをすっかり忘れてた.思い出したのでOK.やっぱりmapcar最強すぐる.