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 ainstance (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