リスト遊び―Emacsで学ぶLispの世界
リスト遊び―Emacsで学ぶLispの世界 (ASCII SOFTWARE SCIENCE Language)
- 作者: 山本和彦
- 出版社/メーカー: アスキー
- 発売日: 2000/05
- メディア: 単行本
- 購入: 2人 クリック: 76回
- この商品を含むブログ (44件) を見る
(2008-06-08読了)
Mewの作者で知られる山本和彦氏の著書.
後半の「セル遊び」の章では,破壊的リスト操作関数による副作用について,consセルの図を交えて紹介している.本書の価値はこの章に集約されていると思う.それ以外の部分については,本書以外の入門書でも必ずといってもいいほど説明されている.
appendは第一引数のコピーをとって,第2引数は元のリストを共有しているということを初めて知った.普段気にしないけれど,実はとっても大事なことを気づかせてくれた.
Lispのデータ構造とその操作をconsセルを用いて考えることができるようになれば,Cのポインタがすんなり理解できるだろう.そういった意味でも,本書の価値は大きい.
あとがきに著者が書いているように,Lispはとっつきにくい言語である.そういった点で,この本はLispアレルギーになることなく,なんだLispの世界って簡単じゃん.じゃあ何ができるんだろう?という正のスパイラルを作ってくれる気がする.
Emacs Lispとなっているが,interactive関数を作ってほげほげしよう,という話題はないのであしからず.
トリビア
ちなみにnreverse, nconcatのnは「破壊的」という意味らしい.nukeが由来となっている説があるとか.