Gaucheの勉強 #1 (「プログラミングGauche」第1〜3章)
先日買った「プログラミングGauche」をようやく読み始めました。
今回は第1章から第3章まで。LispやScheme, Goucheの予備知識について書かれています。
前置記法
(<手続き> <引数1> <引数2>)
こんな感じでリストの最初に手続きを書く手法を「前置記法」と言うそうです。僕が今までやってきたプログラム言語の表記方法は「中置記法」だったので、とても新鮮です。具体的には
(+ 1 (/ (* 2 3) 4))
てな感じで書くみたいです。中置記法でいう
1 + 2 * 3 / 4
です。
ラベル付け
「3.2 Common Lispの影響」でサラっと書いてある「ラベル付け」。
:記号の後に名前を書くとその名前はキーワードとして扱われます。
これ確かRubyにもありますよね。シンボルって言ったっけ。あれと同じと思えばいいのかな?
Schemeの基本ルール
- lambda式は、「レキシカルな環境を保持した手続き」(クロージャ)へと評価される
- 手続き呼び出しは継続を伴った引数付きgotoである
まあさっぱりわけわかんないんですが…。「Schemeでコードを書いてればそのうちわかるよ!」みたいなことが書かれているんですが、果たして僕でもわかる日が来るのでしょうか…。「クロージャって何よ?」みたいなレベルですが…。「クロージャ - Wikipedia」を見てもイマイチよくわからんので、今度誰かに聞いてみよう。
さて、
第1章から第3章までわずか10ページちょっとでした。これからもこんな感じでのんびりやっていきたいと思います。