小编Ale*_*Guo的帖子

REBOL中的多行语句?

我对REBOL3 REPL的一个烦人的问题是它不接受多行语句.例如,我想键入"some_obj:make obj![",按Enter键,然后继续声明.

这对我来说很重要,因为我正在使用Vim插件将可视化选择的源代码发送到REPL.

我已阅读另一个StackOverflow问题,REBOL2支持多行语句,而REBOL3则不支持.有人为此提供了修复,还是在REPL中有多线支持的分支?

rebol rebol3 rebol2

6
推荐指数
1
解决办法
95
查看次数

如何通过添加函数来扩展对象,然后使用self访问原始对象?

我正在定义一个包含两个字段的简单对象.后来我想用一个可以读取这些字段的函数来扩展它. (目前,让我们说它只是想打印其中一个.)

email-service!: context [ 
    key: "abcd" 
    secret: "" 
] 

extend email-service! 'get-folders does [print self/key]

my_email: make email-service! [
    key: "asdfasdf" 
    secret: "who knows?" 
] 

my_email/get-folders 
Run Code Online (Sandbox Code Playgroud)

预期的输出是"asdfasdf",但是没有打印出来.

稍微扭曲一下,用一个函数替换"do":

extend email-service! 'get-folders func [] [print self/key]
Run Code Online (Sandbox Code Playgroud)

rebol rebol3

4
推荐指数
1
解决办法
62
查看次数

标签 统计

rebol ×2

rebol3 ×2

rebol2 ×1