另类编程语言REBOL

canca17年前 (2007-09-14)Rebol301

        不开源,但是REBOL/ViewREBOL/Core对于任何应用都是免费的(唯一不好的,就是用户可以很容易看到你的程序的源代码。如果你没钱购买REBOL/SDK,并且在windows平台上,那么nsis可以把你的程序做成exe文件)。

http://www.rebol.com/view-platforms.html下载REBOL/View——是的,就这一个不足1M的可执行文件就够了——然后依次点击rebol->demos->RebGUI,可以看到这个语言在GUI上的表现。

我不是来讨论语法的,我只是对这个语言实现方式的小巧感到困惑。为什么其他很多语言要做个跨平台的GUI,就那么大的个头呢?

这里是国内的爱好者翻译的《REBOL/Core用户向导》。这里是他的blog上有关REBOL的内容。

翻译了Nano-Sheets A Small But Mighty Spreadsheet Engine in REBOLNano-Sheets A Small but Mighty Spreadsheet Engine in REBOL, Part 2,可惜每一部分都超过这边blog的10万字限制。生气了,不贴了,哼。

一般的例子,一般用户未必有兴趣,那么可以看看这个推箱子游戏(有源代码)
另类编程语言REBOL - CAnca - Ant Software Studio

这里有更多的应用程序和游戏。

REBOL的缺点在于

  1. 方言里面,不能使用REBOL自己的语法
  2. 文档更新太慢,用户少,所以我希望REBOL可以开源
    比如那个发送电子邮件的例子,太过古旧,没有提到现在广泛使用的esmtp发送的情况。如果搜索一下,看到最多的是“寻找并且使用esend.r,它会在你发送邮件的时候弹出一个窗口,让你输入帐号、密码”——但是,我在自己的试验中,什么窗口都没有弹出来 :(
    事实上,不需要这么麻烦,我们看看网络配置的函数
    >> ? set-net
    ......
    ARGUMENTS:
         settings -- [email-addr default-server pop-server proxy-server proxy-port-id proxy-type esmtp-user esmtp-pass]
    很明显,已经支持了需要认证才能发送邮件的邮箱:default-server就是发送邮件服务器的地址(但是似乎不能指定端口,如果某个服务器不是25端口,不知如何处理)。这里面,如果有不需要填写的项目(例如代理),应该使用none做参数。esmtp-user、esmtp-pass最好放在引号里面。

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。