首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我能从这个榆树表达式中移除兰姆达吗?

我能从这个榆树表达式中移除兰姆达吗?
EN

Stack Overflow用户
提问于 2016-01-20 01:48:40
回答 1查看 146关注 0票数 4

下面是一个完整的Elm脚本,它将一组元组放入一个HTML元素中。

代码语言:javascript
复制
import Html exposing (ul, li, text)
import List exposing (map)

values = [(1,2,3), (4,5,6), (7,8,9)]

main =
  ul [] (values |> map (\t -> li [] [text(toString(t))]))

我喜欢在可能的情况下使用|>或其他高阶操作符,但是考虑到上面表达式中t的嵌套比较深,我还没有找到一种很好的方法来表达这一行。在Elm中是否有高阶操作符可以使\t lambda成为不必要的?

我意识到使用lambda可能更容易读,但我想知道这里应该使用哪种组合子,因为toString调用在列表中。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-01-20 03:01:19

如果您想要避免lambda,那么从values开始并通过“管道”更容易,一步一步地将它转换成您想要的最终形式:

代码语言:javascript
复制
import Html exposing (ul, li, text)
import List exposing (map, repeat)

values = [(1,2,3), (4,5,6), (7,8,9)]

main
  = map toString values
  |> map text
  |> map (repeat 1)
  |> map (li [])
  |> ul []
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34890161

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档