小编Rom*_*kov的帖子

什么是currying的真实用例?

我一直在阅读很多关于currying的文章,但几乎所有这些都是误导性的,将currying解释为部分函数应用程序,并且所有示例通常都是关于arity为2的add函数,如函数或其他东西.

curryJavaScript中的许多函数实现使得每个部分应用程序接受多于1个参数(参见lodash),当维基百科文章明确指出currying是关于:

将带有多个参数(或参数元组)的函数的求值转换为评估函数序列,每个函数都有一个参数(部分应用程序)

所以基本上currying是一系列部分应用程序,每个应用程序都有一个参数.而且我真的想知道任何语言的真实用途.

functional-programming currying

13
推荐指数
2
解决办法
3290
查看次数

Haskell中的函数组合和类型注释

总菜鸟在这里.我已经看到了使用do块执行HTTP Get请求的示例,但我希望通过组合来实现.

像这样:

get url = getResponseBody . simpleHTTP $ getRequest url
Run Code Online (Sandbox Code Playgroud)

这是对的吗?这个函数的正确类型注释是什么?

这个没关系:

get :: String -> IO String
get url = getResponseBody =<< simpleHTTP (getRequest url)
Run Code Online (Sandbox Code Playgroud)

但我想写作而不是束缚.它更好/正确的方式是什么?

haskell

1
推荐指数
1
解决办法
155
查看次数

标签 统计

currying ×1

functional-programming ×1

haskell ×1