Scheme入門

世の中のハッカーは、Lispが必須!と言うわけで、唐突にSchemeの勉強を始めました。
とりあえずは、Windowsに処理系をインストール。(chez (chez scheme))から ChezSchemeをDownloadしてインストール。SWLを起動して、おもむろに

> (+ 1 2)

と入力。

3

と表示されました。そして、お次は基本の

> (string-append "Hello " "World!")
"Hello World!"

とやってみました。

しばらくは、もうひとつの Scheme 入門を見ながら勉強の予定。

他にも、http://www.stdio.h.kyoto-u.ac.jp/~hioki/gairon-enshuu/SchemeNotes/scheme.htmlや、Scheme演習も参考になるかな?
http://www.shiro.dreamhost.com/scheme/index-j.htmlは、ちょっと勉強してから読む予定。
そして、最後にはこの本を読めたらな、と妄想中。

計算機プログラムの構造と解釈

計算機プログラムの構造と解釈

今日はここまで

define, if, cond, map, applyなど覚えました。

> (define (avg . ls)
    (/
     (apply + ls)
     (length ls)))

関数を再帰で書くのは、Haskellで慣れていたので違和感なく入れました。末尾再帰の概念はちょっと戸惑いましたがクリア。

今日の驚き点

> (< 1 x 3)

と言う感じで、複数値の比較が一つの式でできてしまうのは便利ですね。