不,(->)没有数据构造函数,因为函数不是代数数据类型.事实上,ghci说
Prelude> :inf (->)
data (->) t1 t2 -- Defined in ‘GHC.Prim’
Run Code Online (Sandbox Code Playgroud)
是一个谎言,因为这不是如何(->)定义.事实上,没有定义,因为函数是一个非常原始的概念.
在某种意义上,lambda表达式\x -> e(或者,等效地,函数定义)是类型值的"构造函数" a -> b,但是您不能对其进行模式匹配.相反,您使用函数应用程序(f e)来解构("使用")函数.
| 归档时间: |
|
| 查看次数: |
491 次 |
| 最近记录: |