摘要:
今天这篇文章分析一下ghci交互解释器对类型的推导。假设有函数fn定义如下:let fn = map map现在fn的类型是:map map :: [a -> b] -> [[a] -> [b]]推导过程:1)首先map函数自身的类型为:map :: (a -> b) -> [a] -> [b]为了区分开第一个map和第二个map,将另外一个map的类型表示为:map :: (a' -> b') -> [a'] -> [b']在调用的过程中,有如下等式关系(a -> b) -> [a] -> 阅读全文