Scheme やってみたくなった

勉強日記とタイトル書いておきながら全然勉強してないので、根本から見つめなおそうと思う。

普段スクリプト言語でとりあえず動く物は書いていたりするんだけど、コンピューターの低いレイヤーのことはまったくわからないので、その辺りをつめることが出来れば、もう少し成長出来るかも、なんて甘い期待もあったりなかったりw

言語って色々あるので迷うんだけど、計算機系の大学では Scheme から入るとのことだったので Scheme に触ってみてみようと思う。でもいきなりなんで教科書もまだないし、リファレンスとかみながら基本からやっていこうかと。

Gauche 入れてみる

Scheme 自体は lisp の方言らしくて、処理系がいっぱいあってどれをいれたらいいのかいまいちわからなかった。なので Scheme のこと書いてる人のブログみてみることにすると 川合史朗さんGauche がいいとのことなので、入れてみる。GaucheScheme 言語に基づくスクリプトインタプリタとのことなので、実行確認までの流れがわかりやすくて良かった。今までスクリプト言語しか触ってないいけど、これなら問題なさそう。

勉強用の計算機は linux の方が良いかなと思ったので、Debian lenny に apt-get で入れてみた。入れたあとに MacPorts でも確認したらそちらにもあったので後で入れておく予定。

Emacs で実行できるように

(setq scheme-program-name "gosh -i")

マニュアル読む限りは上記の記述を .emacs に書いておけば良いらしい。っで run-schemeインタプリタが起動される。簡単だなぁ。

mode も拡張子 .scm のファイルを開くと勝手に scheme-mode になってくれるように Emasc の初期設定でされてるみたい。それだけ一般的だってことなんだろう。

Scheme とか Gauche のマニュアルページ

この手のものが無料でオンラインから読めるなんて素晴らしい時代過ぎる。書籍を買わなくても基本程度なら抑えられるぐらいの密度なので、最初はマニュアルを読んでいく予定。

教科書

まだマニュアル読んですらいない段階だけど、ある程度書き方がわかったら教科書としても使われているらしい以下の書籍を買おうと思う。

計算機プログラムの構造と解釈
ジェラルド・ジェイ サスマン ジュリー サスマン ハロルド エイブルソン
ピアソンエデュケーション
売り上げランキング: 36236