我有两次最近重构的代码,以便更改参数的顺序,因为有太多的代码,黑客喜欢flip或\x -> foo bar x 42正在发生.
在设计功能签名时,哪些原则可以帮助我充分利用currying?
我今天注意到这样一个定义
safeDivide x 0 = x
safeDivide = (/)
Run Code Online (Sandbox Code Playgroud)
不可能.我很好奇这背后的(好)原因是什么.必须有一个非常好的(毕竟它是Haskell :)).
注意:我不是在寻找上面代码的替代实现的建议,这是一个简单的例子来证明我的观点.