Red language 0.5.4 发布,一系列新数据类型

2015年06月14日 18:07 115 次阅读 来源: 开源中国 作者: 路人甲
摘要 Red language 0.5.4 发布,此版本是重要版本,包括大量新特性!Red language 0.5.4 为 GUI 支持和 DSL 做准备,添加了一系列的数据类型。Pair! 数据类型Percent! 数据类型Map! 数据类型异常处理,支持 throw 和 catch完全支持 Set 操作(union,exclude,intersect,difference)New natives(...

Red language 0.5.4 发布,此版本是重要版本,包括大量新特性!


Red language 0.5.4 为 GUI 支持和 DSL 做准备,添加了一系列的数据类型。


Pair! 数据类型

Percent! 数据类型

Map! 数据类型异常处理,支持 throw 和 catch 

完全支持 Set 操作(union,exclude,intersect,difference)

New natives(as-pair,break,continue,extend)

新 action(put)

新函数(cause-error)

其他改进


exit/return are now defined as natives instead of volatile keywords.

do can accept error! values.

parse and load are now more stable when errors are raised from parsing rules.

load errors handling greatly improved (no console exit on syntax errors anymore).

value? now supports any type, except unset! as argument.

fixed bugs and little improvement of help output.

minor Redbin speed and generated payload size improvement.

prin output in console fixed.

fixed Red/System's #get directive not working in some cases.

system/words now defined as an object!.

compiler now supports system/words/ prefix to access global context words.

many fixes and improvements on vector! datatype, especially on math operations.

color definitions are now available.

vector! unit tests significantly extended.

an op! used without arguments in the interpreter now reports an error.

pick and poke now accept a logic! value as index.

added missing comparison operators for vector!.

paths evaluation errors in interpreter are now more accurate.

first memory frame allocation increased from 512KB to 1MB.

fixed memory corruptions caused by function with refinements in interpreter.

division by zero now properly caught for floats.

last but not least, 44 bugs reported on Github's tracker fixed in this release!

未来计划


此版本已经准备重新在 master 集成 Android 分支;下一个版本 0.6.0 计划官方支持 GUI!


更多内容请看发行说明。


Red language 是一门全栈编程语言。同时支持底层开发(使用内置的DSL Red/System)和灵活的动态编程(使用Red)。该语言支持解释执行、静态编译和JIT编译执行。使用REBOL的语法和语义,像英语一样易读并且如Lisp一般灵活。支持函数式、过程式、符号化和homoiconic编程,能快速构建各种DSL。语言将原生的对并发编程提供强有力的支持。使用Actor模型来支持任务并行,使用并发容器来支持数据并行。值得一提的是,整个开发环境仅仅只有1MB大小!!!

还可以输入136 讨论区:
评 论