Gao*_*Gao 3 haskell functional-programming
在第3章中,有一个名为"MySecond.hs"的例子,我真正不理解的是这样的代码:
safeSecond :: [a] -> Maybe a
Run Code Online (Sandbox Code Playgroud)
它总是在文件的第一行,并删除它不会造成任何麻烦.任何人都可以通过这意味着什么来启发我?我只是任何函数式编程语言的新手.
它是类型注释.如果你不写它,Haskell会推断它.
在这种情况下,safeSecond是某事物的名称.::将名称与类型分开.它需要一个类型a的列表(a是一个类型变量,这个函数将在任何类型的列表上工作.) - >是函数应用程序,而Maybe a是返回类型.
请注意,'a'表示单个类型,因此如果传入int列表,则必须获得Maybe int out.也就是说,所有类型中的'a'必须同意.
也许只是一种有两种选择的类型只是一个或没什么.
| 归档时间: |
|
| 查看次数: |
314 次 |
| 最近记录: |