-
コンピュータ・サイエンスの天才といわれると、
僕は、Steeleという名をすぐに頭に思い浮かべ
てしまう。Guy Steele Jr.は、既にハーバード大
学の学生のときに、並列ガーベッジ・コレクシ
ョンでACMの論文賞を獲得して世界的に有名と
なった。MITの大学院においては、Sussmanと
ともにLispの新しい方言であるSchemeを開発
した。また、ハッカーズ・ディクショナリの編
者としても有名である。僕は、Schemeの開発こそ、コンピュータ・サ
イエンスの典型的なセンスの一つではないかと
思うのである。それまでは、LISPの考案者
McCarthyのまやかしともいえる「変数の動的な
スコープ」に、皆がだまされ続けていたわけで
ある。それを、「静的スコープ」でLISPが作れ
るということを身を持って証明したのが、
Schemeの開発であった。Schemeの開発は様々
な要素から成り立っている。まず、静的スコー
プの方がλ算術の理論との整合性がよいという
認識がある。そのような認識を得るには、もち
ろん、λ算術を知らなくてはならないけれども、
それほど数学的なことまで知る必要はない。ま
た、いくら理論との整合性がよくても効率よく
実現できなければどうしようもないから、静的
スコープを効率よく実現するための技術が必要
となる。さらに、いくら理論との整合性がよく
実現の効率がよいとしても、プログラミング言
語として、わかりやすく使い易いものでなけれ
ばならない。そのためには、シンタックスを工
夫したり、環境を整えたりしなくてはならない。
以上のような様々な問題を克服して初めて、静
的スコープが現実のものとなり、Schemeが本
物のプログラミング言語となったのである。Posted on February 4, 2012 with 2 notes
Source: nicosia.is.s.u-tokyo.ac.jp