list処理関数実装中

以下の関数を授業中に実装...

(pair? obj)
(cons obj1 obj2)
(car pair)
(cdr pair)
(set-car! pair obj)
(set-cdr! pair obj)
(caar pair)
(cadr pair)
...
...
...
(cdddar pair)
(cddddr pair)
(null? obj)
(list? obj)
(list obj ...)
(length list)
(append list ...)
(reverse list)
(list-tail list k)
(list-ref list k)

これに加えて quote の処理も追加。ちまちました作業だけど、関数を埋めていくのって結構楽しい。次は eq?系 (eqv?, eq?, equal?) に乗り出すとしようか。それを実装したらそれらを使って (memq, memv, member, assq, assv, assoc) を実装予定。

GCについては isbn:0471941484 を読書中です。しかし、この本はあくまでもアルゴリズムのイントロダクションという気がするので深く学ぶためには論文巡りをしなくてはいけなさそうです。はい。