在 Rebol 2 中:
>> foo: make object! [a: 10 b: 20]
>> foo/a
== 10
>> foo/b
== 20
>> first foo
== [self a b]
>> second foo
== [make object! [
a: 10
b: 20
] 10 20]
>> third foo
== [a: 10 b: 20]
>> fourth foo
** Script Error: fourth expected series argument of type:
series date port tuple event
** Near: fourth foo
因此,您可以将其作为值 1、2、3 的块来选择。但是在 Rebol 3 中进行位置选择是正确的:
>> first foo
** Script error: cannot use pick on object! value
** Where: first
** Near: first foo
我认为这现在已被弃用(比如选择一个函数来获取它的参数列表)。但是,我正在尝试翻译一些类似以下内容的代码:
bar: construct/with (third foo) mumble
(a) 该代码的意义何在?
(b) 我如何将它翻译成 Rebol 3?