3でlatの再帰、4で数の再帰、5はリストの再帰。
- ここで第1の戒律、第4の戒律が最終版に。アトムのリストlatの場合、数nの場合、S式のリストの場合の再帰の掟が決まる。
- *関数は'(), (cons a l), (cons l l)のいずれかの上で動くから、3つ質問をする。
- equal?を定義した
- equal?を使って任意のS式とリストを取るremberに書き直した
- 第6の掟「関数が正しいときのみ簡素化せよ。」が登場。
- 書いてて今までの章よりも関数のcondが多かった印象。
- eqan?以外の関数の中のeq?や=に関してはequal?で一般化出来る。
気付き感想
- 最初はアトムから始まり、cons、lat・数・リストの再帰と来てなんだか少しずつ扱えるデータが増えてきたような。
- それに伴ってeq?, =, eqan?, equal?とより多くのデータを扱える関数を使ってremberを定義しなおしたり、面白い!
- equal?を使う事で処理が簡素化出来て理解しやすくなった。すごい。
- p91の注に出てくる話(andもorもcondの省略形として書く事は出来る)がちょっと発想の転換な気がして面白かった。
0 件のコメント:
コメントを投稿