我正在阅读有关函数式编程的教程,该教程显示了使用 sanctuary.js 库的以下代码示例:
var S = require('sanctuary')
var Maybe = S.Maybe
S.add(
Maybe.of(3)
,Maybe.of(5)
)
.map(n => n * n)
我得到错误Maybe.of is not a function
。sanctuary.js API 文档显示了一个使用.of
as的示例S.of(S.Maybe, 42)
,所以我修改了我的代码,如下所示:
...
S.of(S.Maybe, 3)
,S.of(S.Maybe, 5)
我得到了错误:
add :: FiniteNumber -> FiniteNumber -> FiniteNumber
^^^^^^^^^^^^
1
The value at position 1 is not a member of ‘FiniteNumber’.
我在 Sanctuary 网站上没有看到任何关于 FiniteNumber 类型类的文档。如何使此代码工作?有没有办法将 sanctuary.of
构造函数链接到类型类上,所以教程网站上的示例有效?