blob: 826dec0b632d4fe3226bef1f6c2f4edf0e6a4b92 (
plain)
1
2
3
4
5
6
7
8
9
10
|
:set -XHaskell2010
:set -XRankNTypes -XConstraintKinds -XTypeApplications
import Data.Typeable
class Deferrable p where deferEither :: proxy p -> (p => r) -> Either String r
instance (Typeable a, Typeable b) => Deferrable (a ~ b) where deferEither _ _ = undefined
:t deferEither @(_ ~ _)
|