2004-11-13 [長年日記]
λ. AVL木でGADTを試してみる
Programming in Haskell の Programming:玉手箱:その他 で花谷さんが書いていたAVL木のコードをたまたま見て、GADT を試すいい機会と思い、GADT で「左右の木の高さの差が高々1以下」という制約を表現するように書きかえてみた。AVL.hs
花谷さんのコードではbalance関数を挿入用と削除用で共有するようになったが、このコードだと(処理は同じなのに)型が違うために共有出来ていない。型をうまく定義すれば共有できる?
AVL木でGADTを試してみる(2) に続く...