Tag Archives: rebol

什么是REBOL?

翻译:ShiningRay @ NirvanaStudio 简而言之,REBOL是提供了分布式计算和通信的一种轻量级软件技术。 REBOL技术包含两个部分: REBOL语言 REBOL语言结合了编程语言和元数据语言(如XML)的概念。 这种结果是产生了一种新的语言,它提供了对现代网络分布应用的更有效解决方案。相比传统的语言,REBOL在更少的代码上提供了更强大的表达能力。REBOL应用程序和解决方案的一般典型的代码大小都在10KB的数量级上,而不是10MB。 REBOL发音为“reb-ol”(类似“rebel with a cause”中的),代表“基于相关表达式的对象语言”(relative expression based object language)。他第一次发布是在1997年到目前为止已经下载超过四百万次。他对客户端和服务器端应用程序都是十分合适的,就像下面所描述的。 你可以在《REBOL到底哪里不同》一文了解更多内容或者想迅速浏览一下REBOL语言的介绍,请看《REBOL 语言简介》。 X-Internet平台 X Internet是指可执行互联网(executable Internet),它是Internet发展的下一个阶段。 X Internet概念是本地计算机(客户端)成为像网络服务器一样强大,这样更多的计算责任可以被转换到客户端完成。这种方式由三个好处: 他改善了用户体验的质量。他让Internet应用程序运行的像本地应用程序一样快。Web设计造成的延迟不复存在。 他提高了服务器的性能。 由于客户端作了更多的工作。这就让你在同一台服务器上可以进行的连接次数大大增加。现在典型的是大约10到50倍于原来的连接数量。这就好像以一台的代价可以做10-50台或更多服务器的事。 他使得网络通讯更加有效。 应用程序不需要每次连接都传送用户界面信息(如:网页)。取代的是指需要发送用户产生的动作相关的数据和代码。这让X Internet程序仅仅占用目前典型Web应用程序所用带宽的1/10到1/50。 是不是说X Internet反对“瘦客户端”计算模型?当然不是,如果你使用REBOL。因为REBOL的先进的语言设计,X Internet应用程序将和大多数基于web的解决方案比,显得特别得小。这就是我们所谓的轻量级。当应用程序构建得较为完善,他们将花费更少的时间和金钱来进行开发,并且很容易维护和升级。 如果要了解X Internet和REBOL解决方案,请参见我们的IOS概览页面。

REBOL 语言简介

翻译:ShiningRay @ NirvanaStudio 本文是一篇针对新用户的技术文档。他给出了一个REBOL的简明概述和一个例子。 Quick Facts REBOL 代表基于相关表达式的对象语言(Relative Expression Based Object Language). REBOL 发音为"reb-ol" ,和“rebel with a cause”中的一样。 REBOL 是一种消息式的语言。他的主要目的是提供一种轻量级的分步计算和通讯的方法。 REBOL 由Carl Sassenrath设计, 是Amiga OS——世界上第一个个人电脑的多任务操作系统——的系统架构师。 REBOL 不仅仅只是一个编程语言。他还是一种用于表示数据和元数据的语言。他给计算、存储和信息交换提供了同一种方法。 REBOL 有十分丰富的软件包。初学者可以从REBOL/Core和REBOL/View开始。专业人士会发现REBOL/Command和REBOL/SDK十分有用。公司和组织会发现REBOL/IOS是一个强大的协作交流平台。 REBOL 代码和数据跨越了40多种平台。在Windows上写的脚本和在Linux, UNIX和其他平台上运行得都一样,根本无须任何改动。 REBOL 引入了方言化的概念。方言是一个小巧有效专门针对特殊领域的子语言。 REBOL 本意就是要保持小巧——即使他已经包含了数百条函数,几十种数据类型,内置帮助,多种Internet协议、压缩、错误处理、调试控制台、加密和更多。 REBOL 程序很容易书写。你所需要的仅仅是一个文本编辑器。一个程序可以只有一行也可以是一整个应用程序包含了几十个文件。。同时,你的程序不需要对库和包含做声明。 上手例子 在REBOL中,简单的任务有简单的做法。这里有一些例子: 如果你想尝试这些例子,只要下载REBOL。他确实很小,下载得很快。它不需要任何复杂的安装也不需要任何特殊的类库。他很简单。要运行REBOL,只要点击他的图标。(如果你在使用REBOL/View,在他启动之后点击console图标来打开控制台窗口。) 先尝试一下经典的Hello World例子: print "Hello World!" 或者,把它作为一个邮件消息发送给一个朋友: send luke@rebol.com "Hello World!" 要直接从一个网站运行一个脚本 do http://www.rebol.com/speed.r 这个叫本会显示你的计算机有多快。 [...]

REBOL十步

翻译:ShiningRay @ NirvanaStudio 这是REBOL的一个简短概要。他在十步之内展示了REBOL的基本概念,仅仅需要阅读几分钟而已。更多的详细信息可以在 REBOL/Core Manual中找到。 1. 值(Value) 值是REBOL的未处理的数据。不同的值可以在REBOL中直接书写。你已经对他们很熟悉了。这里有一些例子: 数字: 1234 -432 3.1415 1.23E12 0,01 1,2E12 时间: 12:34 20:05:32 0:25.34 日期: 20-Apr-1998 20/Apr/1998 (US) 20-4-1998 1998-4-20 (国际通用) 1980-4-20/12:32 (有时间的日期) 1998-3-20/8:32-8:00 (带着一个时区) 货币: .34 USD.34 CAD3.45 DEM34,56 元组: 3.1.5 (版本号) 255.255.0 (颜色值) 199.4.80.7 (IP地址) 字符串: "Here is a string" {Here is another way to write a [...]

REBOL到底哪里不同?

翻译:ShiningRay @ NirvanaStudio REBOL并非一个传统的计算机语言像C、BASIC或者Java。相反,REBOL是设计为解决在计算中的一个根本问题:在分布的计算机系统之间的信息的交换和解释。 REBOL并不是通过综合一种编程语言和一种元数据语言的概念来解决这个问题的。就好像你也可以直接在C/C++中表达和处理元数据或者在XML中书写代码算法一样。解决这个问题是通过相关表达式(relative expression)的概念(这也是REBOL名称的由来——Relative Expression Based Object Language)。按照技术术语来说,REBOL是一种元循环语言(meta-circular language)。也就是,REBOL扮演了自身的元语言。 相关表达式,也叫做“方言”,给代码和数据的表示提供了极高的效率,同时,他们也是REBOL最强大的力量。比如,REBOL可以不仅仅可以只用一行代码就建立一个图形用户界面,还能把这一行作为数据发送出去在世界上的另一台网络计算机系统上进行处理和显示。 REBOL的一致的架构提供了广泛而且强大的能力,从他小巧的解释器(称为REBOL/Core)到一整套互联网操作系统(Internet Operating System ,称之为REBOL/IOS)。 REBOL的最终的目标是要为一切连接在互联网上的设备之间信息的存储、交换和处理提供一种新的架构。不像其它的方法需要几十兆代码,一层又一层的复杂结构,又只能在单一平台上运行,需要特定的编程工具,REBOL很小巧、很轻便、可移植并且易于管理。 REBOL应用程序(称为“reblets”)的大小很重要。不仅仅因为可以让他们只要几秒钟就下载完(即使使用调制解调器或者是无线网络)还因为reblets很小,他们就很容易创建、修改和增强。大多数REBOL应用程序,即使是很重要的能做很多事情的应用程序像建立网站、处理信用卡或者共享一个日历等等,都仅仅只有10-30KB。 例如,我们用来展示REBOL的图形化幻灯片展示程序只有9KB,他的效果像这样: 这里还有另外一个例子。这个用户状态和活动监视器只有7KB: 还想看更多的例子么?这里有几个不同的例子,用REBOL/View写的,这里还有一些“reblets”为IOS写的。几乎所有这些加起来都不超过30KB,但他们效率仍然很高,而且是分布式应用程序。

REBOL脚本快速入门

By Carl Sassenrath REBOL Technologies 翻译:ShiningRay @ NirvanaStudio 目录 介绍 数据类型的世界 集成网络操作 创建脚本文件 1. 介绍 REBOL是针对互联网通讯设计的。REBOL是一种高级解释语言允许你访问和控制互联网的资源,而且他的便捷让你可以开始考虑把互联网当成你的个人操作系统。你已经熟悉了如何使用浏览器在网上冲浪。有了REBOL,你可以编写互联网。 在REBOL总部我们用REBOL建立手册和文档(比如当前这个),生成全部我们的网站、自动上传页面和图像到网络上、发送邮件通知、处理信用卡、远程共享文件、跟踪客户订单、进行即使通讯、主持电子会议、自动更新软件、运行技术支持、管理我们的错误数据库、删除垃圾邮件、备份服务器、遍历网络、过滤网页广告、还有——最重要的——在42种不同的系统上构建REBOL。 每天我们在几十台机器上用数百个REBOL脚本给我们带来了极大的便利。我们只要一种语言就能完成所有的事情。就像一个神奇的魔术师,REBOL使我们这个小小的小组事倍功半。 这篇指南提供了使用REBOL的简要的介绍。如果你正在慢慢得阅读那份720页的REBOL手册,我们也很理解,谁会有时间把它全部看下来呢?抱着这种想法,这篇文档的目标是在20分钟之内给你一个REBOL的大体概念并且给出一些可以找到更多资料的链接。 2. 数据类型的世界 语言是建立在一系列基本的数据类型的基础上的,他们被用来构建一切的其他东西。整数和字符串都是数据类型的例子。大多数语言有大约5种或者6种数据类型。相反,REBOL有45种数据类型。这种结果是很多任务下你可以关注于你的程序要做什么,而不是如何去做。 例如,所有的语言都可以让你对数字相加: 101 + 10 然而,在REBOL中,你可以一样很容易的加减时间、日期、货币、元组和坐标。这里有一些例子,还有他们的结果: 10:55 + 0:10 11:05 1-Jan-2001 + 100 11-Apr-2001 .55 + 0 0.55 100.30.5 + 100.5.5 200.35.10 100×200 + 100×40 200×240 注意你不需要包含(include)任何文件,使用引入(import)语句,或者进行函数声明。他们是语言中的基础部分。 同时注意你使用同一种记号来相加各种类型。大多数函数都可工作于多种数据类型上。他们是多态的;他们可以和多种数据类型一起工作。结果是什么?你将变得更高效,却无需让你的程序变得更复杂。简单的东西就应该让他简单。 这里是另一个例子,它搜索第一个字符串中出现的第二个字符串: find “World Wide Reb” “wide” [...]