如果我有以下自定义类型:
type MyType = String -> Bool
single :: Char -> MyType
concat :: MyType -> MyType -> MyType
和
var :: MyType
var = concat (concat (single 'A') (single 'B')) (single 'C')
是否可以遍历var并查看concat和single被调用多少次?
答案 0 :(得分:5)
不,没有。
var
的类型为MyType = String -> Bool
,因此它是一个函数。你可以用函数做的唯一事情就是调用它。调用var
会导致true
或false
,因为其结果类型为Bool
。因此,这还不足以对您想要的信息进行编码。