首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我应该叫什么叫REBOL函数来列出理解?

问我应该叫什么叫REBOL函数来列出理解?
EN

Stack Overflow用户
提问于 2008-10-15 08:33:44
回答 4查看 457关注 0票数 6

REBOL没有内置的方式来执行列表理解。然而,REBOL有一个强大的工具(称为parse),可以用来创建特定于域的语言(DSLs)。我使用parse创建了这样一个用于列表理解的迷你DSL。为了解释表达式,包含理解的块被传递给一个函数,因为缺少一个更好的术语,我称之为comprehend。

示例:

代码语言:javascript
复制
comprehend [(a * b) for a in 1x100 for b in 4x10 where (all [odd? a odd? b])]

出于某种原因,comprehend听起来不太对,但是像eval这样的东西太笼统了。

我还没有找到任何其他语言需要关键字或函数来理解列表。无论在哪里,它们都是纯粹的句法糖。不幸的是我没有这个选择。那么,既然我必须有一个函数,那么它有什么好的、简洁的、合乎逻辑的名称呢?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-02-01 21:44:15

select怎么样?

select [(a * b) for a in 1x100 for b in 4x10 where (all [odd? a odd? b])]

票数 4
EN

Stack Overflow用户

发布于 2009-02-01 21:25:30

因为列表理解可以被认为类似于映射,所以您可能会考虑将其称为"listmap“。或者,因为列表理解是基于set-builder表示法的,所以您可以将其称为“构建”或“构建列表”。

(免责声明:我对REBOL知之甚少,所以如果这些名字已经被取走,请原谅我)

票数 2
EN

Stack Overflow用户

发布于 2009-02-02 01:29:30

变形

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/204040

复制
相关文章

相似问题

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