当前位置:  开发笔记 > 前端 > 正文

榆树是否支持美元运算符($)?

如何解决《榆树是否支持美元运算符($)?》经验,为你挑选了1个好方法。

在Haskell中,您可以使用$运算符来清理代码,从而无需使用parens.

榆树是否支持这种运算符,或类似的东西?

我可以自己定义,但我希望这是内置的东西.

以下是它的工作原理:

import Html
import List exposing (map, foldr)

datas = [("a", 1), ("b", 2), ("c", 3)]

{--}
($) : (a -> b) -> (a -> b)
($) a b = a b
infixr 0 $
--}

main =
  {-- replace all these parens
  Html.text (toString (foldr (++) "" (map fst datas)))
  --}
  Html.text $ toString $ foldr (++) "" $ map fst datas

Apanatshka.. 20

是的,我们用<|而不是$.我们从F#借用了翻转版本|>以及<<合成.和翻转版本>>.
一旦这些被引入,人们自然会倾向于称为"流水线"的样式,在那里您可以使用|>操作员获取一些数据并将其转换为几个步骤.这些天,这是榆树代码中比使用更常见的代码模式<|.

例如:

update : (Float, Keys) -> Model -> Model
update (dt, keys) mario =
  mario
  |> gravity dt
  |> jump keys
  |> walk keys
  |> physics dt

(摘自网站上的马里奥示例)



1> Apanatshka..:

是的,我们用<|而不是$.我们从F#借用了翻转版本|>以及<<合成.和翻转版本>>.
一旦这些被引入,人们自然会倾向于称为"流水线"的样式,在那里您可以使用|>操作员获取一些数据并将其转换为几个步骤.这些天,这是榆树代码中比使用更常见的代码模式<|.

例如:

update : (Float, Keys) -> Model -> Model
update (dt, keys) mario =
  mario
  |> gravity dt
  |> jump keys
  |> walk keys
  |> physics dt

(摘自网站上的马里奥示例)

推荐阅读
刘美娥94662
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有