B
Size: a a a
АХ
АХ
AS
{-# LANGUAGE UndecidableInstances #-}
{-# LANGUAGE FlexibleInstances #-}
module Smth where
class Eq a => X a
class Eq c => Y c
instance X a => Y a
instance (Eq a, X a) => Y a
писать? Как то нелогично что ограничения на класс X
игнорируютсяAS
{-# LANGUAGE UndecidableInstances #-}
{-# LANGUAGE FlexibleInstances #-}
module Smth where
class Eq a => X a
where x :: a
class Eq c => Y c
where y :: c
instance (Eq a, X a) => Y a where
y = x
f :: X a => a
f = y
X a
вполне достаточно, то есть такое работаетк
MK
MK
MK