是否有办法说服GHCi告诉我某些任意类型表达式实现了哪些类型类实例?
很显然,您可以使用:info
命令查找类型构造函数的所有实例。但是,一些复杂的 type表达式会如何?
例如,如果我想知道Maybe Int
有哪些实例(不是Maybe
,而是Maybe Int
),该怎么办?
我尝试过
:info Maybe Int
但这只是给我有关Maybe
的信息,然后是有关Int
的信息。它将其视为两个单独的类型构造函数,而不是类型表达式。
尤其是当您具有复杂的monad变压器堆栈时,并不总是确切地知道特定堆栈可能具有哪些实例。