データを生成する関数が多相型であろうとなかろうと
GCつけるならデータの型を実行時に判定しなくちゃならない。
多相型のない言語でもGCを付けるならこの問題は同じ。
多相型があると解法が限定されてしまうが。