まえがき
世の中には様々なプログラミング言語があるが,本文書では,Lispプログラミング言語の一つの方言であるScheme(スキーム)を紹介する.ここではSchemeを直観的に理解することをまず目標として,形式的に完全であるかどうかにはこだわらないことにする. ※見た目にもあまりこだわらないことにする:-)
- 湯浅太一 「Scheme入門」 岩波書店
- K.ディヴィグ著 / 村上雅章 訳 「プログラミング言語 SCHEME」 ピアソン・エデュケーション 2000
- 猪股俊光, 益崎真治 「Schemeによる記号処理入門」 森北出版 1994
- D.P.フリードマン, M.フェライセン 著/ 元吉文男, 横山晶一 訳 「Scheme手習い」 マグロウヒル出版 1990
- H. Abelson, G.J. Sussman and J. Sussman 著 "Strucuture and Interpretation of Computer Programs"
- G.J. Sussman, H. Abelson and J. Sussman 著 和田英一訳 計算機プログラムの構造と解釈 第二版 ピアソン・エデュケーション 2000
(上記の本の第二版の日本語版)
- 国内
- 海外
本文書は,主に上記の文献を参考にして筆者がまとめたものであり,
これらの参考文献に負うところが大である.
特に,「評価環境のモデル」と「クロージャーとオブジェクト」では,筆者がSchemeを学習し,大いに影響を受けた"Structure and Interpretation of Computer Programs"で使われている図式のスタイルをそのまま利用しているので,ここにそれを記しておく.
またその中の例題も同じテーマのものを使わせてもらっている.
※なお言うまでもないが,本文書に誤りがあれば,それは筆者の誤りである;-)
もくじ
注意
Schemeの処理系には,さまざまなものがある.
elk guile scm MIT scheme TUT scheme …もちろんどのScheme処理系を用いても,数値演算などを実行したときの計算結果は同じであるが,変数・関数定義,変数への代入の式に対する返り値は,Schemeの仕様書には定められておらず,処理系の実装に委ねられている.
本文書においては,多くの実行例を挙げているが,必ずしも1つのScheme処理系を想定しておらず,その都度分かりやすい形式でシステムからの応答を表している.
1998-2005 CopyLeft 日置 尋久
本文書はCopyleftに則り,著作権表示,参考文献のリストおよびこの但書きを全て変更しないで,添付する場合にのみ再配布可能です.本文の内容を変更した場合は,その変更が明らかになるようにしてください.