奇怪的boo语言语法

时间:2008-08-31 13:52:57

标签: closures boo

我在Boo Language Guide中遇到了一种奇怪的语法:

setter = { value | a = value }

什么是|算子意味着什么?

4 个答案:

答案 0 :(得分:5)

Boo的文档似乎缺乏这个领域 - 似乎

setter = { value | a = value }

的简写
setter = def(value):
    a = value

答案 1 :(得分:4)

好吧,从未使用过Boo,我(受过教育的)猜测是将参数传递给闭包lambda风格的函数。在这种情况下,{p | C}指的是在代码C中将单个参数绑定到p的匿名函数。

答案 2 :(得分:2)

亚当是对的。该示例的要点是显示boo中的lambdas具有对封闭范围的读写访问权。

答案 3 :(得分:0)

指定代码块(匿名函数)的语法来自RubySmalltalk