我是一個Haskell和一個Stackoverflow noob,這裏是我的 第一個&可能很基本的Haskell問題。 module M where
import Data.HList
data R r a
r1 = undefined :: R a Int
r2 = undefined :: R a Double
rPair :: R r a -> R r b -> (R r
我有一些代碼使用類型來消除實例的歧義(真正的代碼是使用GHC.TypeLits類型標記的singletons,但我認爲這不是密切相關的),我想使用let綁定來避免文本級別的重複;不幸的是,這會使結果單調。 以下是問題的一個例子: class Foo a where
foo :: a
instance Foo Int where
foo = 0
instance Foo