ページ

2010年7月1日木曜日

やさしいLisp入門

先週くらいに丸ノ内OAZOの丸善で購入しました。 http://www.amazon.co.jp/やさしいLisp入門-酒井-皇治/dp/4877831029 LISPの本は何冊か持っていますがなかなか身につきません。今回もまた身につかずに終わってしまうのかなとも思いますが、少しは成長できるでしょう。 前書きを読むと理解のしやすさを優先して正確さを犠牲にしているとか、とっつきやすくするために car を first で cdr を rest で代用しているとあり、car や cdr で覚えているのでちょっと残念と思いましたが、読み進めると正確さを犠牲にしている部分はそれとわかるように、defun で関数を作る章で本当はマクロなんだけど関数と違うところはほとんどないから関数として扱いますというような冗長な説明が書かれているので読んでいて安心ではあります。 日本語の扱いについては取り扱っていないなど、知りたい部分が書かれていない感もあり少々残念ではありました。 まだ全部読んでいませんが丁寧に説明されている感じがするし理解のしやすさを優先したというだけあって分かりやすい感じもします。実際に自分が理解しているかどうかは別として。 さて、実際に書いたプログラムを実行するにはどうしたらいいのかなと、LISP関連の本を読んでいるといつも思うのだけど、ファイルの1行目に次のような実行するコマンドへのパスを記述するというような説明はないので本当にこれでいいのか自信が持てない。
#!/usr/bin/clisp
そう思って調べてみるとこのやり方で良かったらしい。 http://clisp.cons.org/impnotes/quickstart.html
Platform Dependent: UNIX platform only. On UNIX, a text file (#P".fas" or #P".lisp") can be made executable by adding a first line of the form #!interpreter [interpreter-arguments] and using chmod to make the file executable.
ということなので #!/usr/bin/clisp とか #!/usr/bin/env clisp とかを1行目に書いて chmod で実効権限を与えればOKということでした。 本書では MacOS X を前提にしているらしいので UNIX ライクなOSでの扱いはあまり詳しくないので少々残念。だけど概念的なプログラムの本質に関わるところで理解を深めることが大事なのだから細かいことにいちいち残念がっていてもしかたありません。 早くスマートで実用的なプログラムを書けるようになりたいです。

0 件のコメント: