这涉及在Learn you a Haskell for Great Good遇到的,即这一个例子:
ghci> map ($ 3) [(4+), (10*), (^2), sqrt]
我想了解它,但它是没有意义的我。当然,函数列表将应用于输入(编号3),但我不明白$
操作员如何提供帮助。我试图追踪事物的应用顺序(如果有一个haskell IDE与步骤通过编译器,请让我知道),并不能理解如何$
是正确的联想,允许翻转功能应用程序,即当我看到map
像这
map fun [1, 2 .. n]
我想象下面发生的事情形成输出列表
fun 1
fun 2
.
.
fun n
,但手头的例子,怎么会是这个意思的:
$3 4+
你的直觉是相当不错的,但它更像是'($ 3) (4 +)'。那么也许'($)::(a - > b) - > a - > b'会帮助你理解。 –