2005-10-28から1日間の記事一覧

Cでのガベコレ実装

http://www.hpl.hp.com/personal/Hans_Boehm/gc/ 忙しすぎてちゃんと読む気がしないが、これってどうなの?と思ってしまう。Cの場合って型のキャストとかが簡単に出来てしまうわけで、上記の無限リストの実装もintのところにポインタをキャストして入れてた…

遅延評価に関連して

2年生用のscheme課題で、new-ifの問題が出ていた。 (define (new-if test then-exp else-exp) (cond (test then-exp) (else else-exp))) (define (fac4 n) (new-if (= n 0) 1 (* n (fac4 (- n 1))))) これが無限ループになる理由を答えるものだが、逆に無限…

Cにおける、無限リストの実装

どうでもよいことなのですが、この間Cでcarとcdrが使える、いわゆるリストを実装しました。そのソースを以下に示します。 #include #include struct cell{ int value; struct cell *next; }; struct cell *new_cell(int value){ struct cell *cell = malloc(…