05/12/09 01:18:06
一部語弊あり
>>198
> Haskellでは Tree 等の複合的な型クラス に対する型クラスが書けるがCleanでは書けない。
> class x1 a :: a -> a
> class x2 a b :: (a b) -> (a b)
> が別クラスになる。
> または instance x1 Class1ElementXYZ のようにインスタンスの数だけinstanceが必要だ。
arrayCopyRange:: !*(a e) !*(a e) !Int !Int -> *(!*(a e) , !*(a e)) | Array a e
arrayCopyRange x=:{[i]=xi} y i j
| i > j = (x,y)
= arrayCopyRange x {y&[i]=xi} (i+1) j
ちょっと面倒だが一応?書ける
一意性伝播がよくわからない。(エラーメッセージが…)
** 面白そうなファイル **
StdOverloadedList special なんてのがある