関数型プログラミング言語Haskell Part34 (671レス)
上下前次1-新
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん
225: デフォルトの名無しさん [sage] 2023/06/25(日) 17:33:31.79 ID:OvK+yilq(1) AAS
ありがとうございます
現在まだ調べてる最中なんですけど
https://stackoverflow.com/questions/7198907/haskell-constraint-is-no-smaller-than-the-instance-head
によるとどうもclass制約の解決をloopさせないための制約くさいです
つまり「aがclasd Cのときclass Dにも入れる事ができる」、「aがclass Dのときclass Cにも入れる事ができる」の宣言
class ( C a ) => D a where ...
class ( D a ) => C a where ...
のような宣言があるとまずいようです
なので=>の左側の型は右側の型より“短い”事が要求されるそうです
例えばtoDみたいな型生成子を作っておいて
class ( C a ) => ( D ( toD a ) ) where ...
などとしないといけないらしいです
でその後newtypeを使うとどうやらこうやら書いてあるんですけどなんのことやら
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 1.051s*