翻转 Elm 函数调用的参数

flip arguments to Elm function call

我正在尝试修改 the Elm example that shows a single spacer 以便它呈现多个不同颜色的垫片:

import Color exposing (red, blue, yellow)
import Graphics.Element exposing (Element, color, spacer, flow, right)


colors = [ yellow, red, blue ]

presentColors : List Element
presentColors = List.map (color ??? (spacer 30 30)) colors

main : Element
main =
  flow right presentColors

然而,正如您所见,函数 color 首先接受颜色参数,因此我无法创建它的部分应用版本供 List.map 使用。

那么如何将参数翻转到 color 以便可以部分应用它?

从 Elm 0.19 开始,flip 不再是 included by default。文档建议改用命名辅助函数。


转到 the Elm (pre v0.19) libraries page. Press Standard Libraries. In the search box, type in flip and click the function that comes up。这将为您提供

的文档

flip : (a -> b -> c) -> b -> a -> c
Flip the order of the first two arguments to a function.

你可以用它来做

flip color (spacer 30 30)

相同
\c -> color c (spacer 30 30)

Flip 已从 elm/core 的 0.19 中删除。你可以试试:
pilatch/flip 改为打包。