LET OVER LAMBDA Edition 1.0
ISBN4434133632
SIB access
「この世には2種類の言語がある,Common LISPとそれ以外だ!」的な本.マクロとリードマクロを使えば何でもできるぞ,という...言語マニアの口プロレスをそのまま本にしたような感じで,読んでいて痛快ではある.
タイトルの let over lambda は,
(let ((counter 0)) (lambda () (incf counter)))のように,letで変数を作っておいて,それを参照する関数を返す構造を指すが,これは,LISP系言語(というか,レキシカルスコープを持つ言語)にとってはごく普通の構造なので,本書の特徴を十分に表してはいないかも.本書の本質はマクロにあるので.このタイトルは省略するとLOL (Laugh out loudly: (笑))になるから選ばれたのだろう.
正直言って,後半全然ついて行けていないが,またCommon LISP使ってみようかな,という気にさせられる.オレオレ機能を簡単につけられる言語は,ソフトウェア工学的に賛成できないのだけど.
ちょっと不思議なのは,C++のテンプレートに関する言及がないこと.Lispのマクロにちょっとでも似たものが他の言語にあるとすれば,C++のテンプレートだと思うのだが.LisperにとってはC++は論外なのだろうか?
LET OVER LAMBDA Edition 1.0
posted with amazlet at 09.11.01
ダグ ホイト
エスアイビーアクセス
売り上げランキング: 30444
エスアイビーアクセス
売り上げランキング: 30444
0 件のコメント:
コメントを投稿