「プログラミングGauche Kabuaプロジェクト著」を呼んでいる。
今、Gauche:ゴーシュに少しはまっている
LISPという言語らしいが、以前から気になっていた。
これがとても難しい言語です。
私にとっては、
関数型言語というもので、C++などは手続き型言語らしいが、
かなり違う考えでプログラムを組む。
forやwhileなどのループものない。
ちょっとありえないですが、再帰処理でをそれに変わる処理をします。
この再帰はしかし、C++できになっているテンプレートのメタプログラム
では使えるので前からきになっていた。
しかし、この再帰でプログラムを組むのは、むずかしいです。
基本的には代入がない・・・
変数に値をいれることができないんです。
代入ににたころはできるけど、一度、入れる(束縛する)ともう変更できない
という不思議なことに・・・
でも、実はこの代入というものがプログラムを複雑化している原因らしく
関数型言語のほうがバグが入りにくいらしいのです。
なんとかその、バグがはいりにくいというこをが理解したくて
今、やってます・・
また、最近きく、クロージャーなどもLISPから考えがうまれている
ようで、かなり奥が深い言語のようです。
ちょっと、面白くなってきた。
| このブログのURL
|この記事のURL