ホームへ

お詫びと訂正

本書の以下の部分に誤りがありました。 ここに訂正するとともに,ご迷惑をおかけしたことを深くお詫び申し上げます。

(2016年5月30日更新)

はじめに

p.iii
あらめて
あらめて

第1章

p.28 12行目
Lisp を使う側は
Lisp を使う側は

第2章

p.33 コラム M式とS式
(if c1 m1 (if (c2 m2) ...))
(if c1 m1 (if c2 m2 ...))

第2章

p.38 2.2.4 の2行目
(1 (2 3)4)
(1 (2 3) 4)

) と 4 の間に空白が入ります。(但しプログラム的にはそのままでも動作します。)


第2章

p.40 図2.9 2行目
(assoc key alist)
(assoc キー 連想リスト)

間違いではないですが、他の関数表記との統一のために修正しました


第2章

p.40 図2.9 8行目
(acons キー 値 連想リスト) → ((キー . 値) . alist)
(acons キー 値 連想リスト)

他の関数表記との統一のために修正しました


第2章

p.45 図2.15 下から6行目
(apply 関数 引数リスト ...)
(apply 関数 引数 ... 引数リスト)

第2章

p.50 5行目
my-ifの数式
my - ifの数式

my と - と if の間に空白が入ります。


第2章

p.54 下から2行目
ACMCommonLisp
ANSICommonLisp

第2章

p.57 図2.22
((x10))
((x 10))

x と 10 の間に空白が入ります。図2.22に2ヶ所あります。


第2章

p.58 2.33 (C)
funのca
funのcar

第2章

p.59 図2.23
((x10))
((x 10))

x と 10 の間に空白が入ります。図2.23に2ヶ所あります。


第2章

p.59 図2.23
(list(lambda () x)
(list (lambda () x)

list と ( の間に空白が入ります。(但しプログラム的にはそのままでも動作します。)


第2章

p.59 図2.23
(d) (funcall (card fun)20)
(d) (funcall (cadr fun) 20)

後半の訂正は ) と 20 の間に空白が入ります。(但しプログラム的にはそのままでも動作します。)


第3章

p.64 3.1.1 下から6行目
これは==(イコール)
これは=(イコール)

=は2個ではなく1個です。


第3章

p.72 コラム「再帰関数の意味論 ― 不動点」の8行目と13行目
X × 
X  

間違いではないですが、変数 X と乗算 × が連続で現れていて、見にくくなっていますので、乗算記号を*にしました


第3章

p.73 コラム「プログラムの意味論」の4行目
操作的意味論はプログラムの
表示的意味論はプログラムの

第3章

p.77 リスト3.5の名前とリストの下の1行
my-pop
mv-pop

リスト3.5 のタイトルの中と、リスト3.5の下1行目にある my(ワイ)-pop は mv(ブイ)-pop です。


第3章

p.78 本文下の2行目
setf(car)
(setf car)

第3章

p.79 図3.8
(setf(aref friends 0)'gomi)
(setf (aref friends 0) 'gomi)

(、)の前後に空白が入ります。同様な箇所が上記を含めて3ヶ所あります。(但しプログラム的にはそのままでも動作します。)


第3章

p.84 下から2行目から1行目
実際のLisp処理系ではリスト対する
実際のLisp処理系ではリスト対する

第3章

p.85 本文1行目
(setfcar)
(setf car)

setf と car の間に空白が入ります。


謝辞

peccu様の「はじめてのLisp関数型プログラミング を読んでいて気づいたこと」 で多くの誤りを指摘していただいております。
参考にさせていただいております。深く感謝いたします。
https://gist.github.com/peccu/a3ea87a556bfbcd9157e

三重大学 太田義勝教授からも多くの指摘をいただいております。深く感謝いたします。

ホームへ


Copyright © 2016 All Rights Reserved by GOMI Hiroshi.