IronScheme ,DLR 之上的 Scheme R6RS 实现,在测试一年后终于发布 RC1 了。
IronScheme 是 Llewellyn Pritchard(也称 Leppie )的成果,他还是 xacc.ide 的作者,一个针对.NET 语言的开发环境。他最早创建了 IronLisp ,不过发现没有另外一个 LISP 方言有趣,所以 Leppie 决定实现 Scheme,让其运行于 DLR 之上。结果就诞生了 IronScheme。在 10 个月的 alpha 开发,和 1 年内 4 个测试版发布之后,IronScheme 目前达到了 RC1 的阶段,终于要接近官方 1.0 版本了。
IronScheme 能通过命令行来调用,一个所谓的 REPL 环境,或者作为脚本库嵌入到.NET 应用程序中。它运行在.NET 32 和 64 位版本上,以及 Mono 32 位版本上。
IronScheme 当前通过了 PLT Scheme 测试套件的 8880 个测试,只有 4 个未通过。有两个特性依旧不足,Leppie 计划在 2.0 中解决这些问题:
- call/cc 只支持换码延续(escape continuations),尝试重复调用延续将导致错误
- 在 beta 2 开发阶段,我开发了一个 CPS 版本,不过其太慢当前没有任何用处,将会在 IronScheme 2.0 中解决掉。
在最终发布之前依然需要解决的问题有:更多的测试,更多的和 CLR 集成,以及完整的文档。这个项目基于 MS-PL 许可协议发布。
相关资源:对Leppie 的访谈,在.NET 应用程序中托管IronScheme , Scheme 语言将被分作两个。
查看英文原文: IronScheme Nears Final Release
评论