Cでのガベコレ実装

http://www.hpl.hp.com/personal/Hans_Boehm/gc/
忙しすぎてちゃんと読む気がしないが、これってどうなの?と思ってしまう。Cの場合って型のキャストとかが簡単に出来てしまうわけで、上記の無限リストの実装もintのところにポインタをキャストして入れてたりするわけです。その逆もまた可能なわけで・・・
一旦キャストしてしまったものをどう扱うのかとかいろんな問題があってCでガベコレってのはあんまりいいとは思えないかなあ。
このあたり、Javaではどう実装されているかというと、Javaではオブジェクトとプリミティブの関係のキャストは不可能なので、ポインタはいつまでたってもポインタとして実装されているわけですね。
っていうか、Cとか使いたくない。めんどいし。