ParseTree 3.0 发布,众多相关程序库升级

  • Werner Schuster
  • 李明(nasi)

2008 年 10 月 28 日

话题:RubyDevOps语言 & 开发文化 & 方法

就职于 EngineYard 从事 Rubinius 开发的 Ryan Davis,发布了 ParseTree 和相关程序库的众多升级。

ParseTree 3.0(注意:ParseTree 3.0.1 是目前最新的版本)带来了一些重要的修改:

* 拆分 sexp_processor 项目。

* ParseTree#process 输出 UnifiedRuby 解析树。

* 将所有 ParseTree 测试转换为 RawParseTree 测试。

* 新增 ParseTree 测试。

* 新增 UnifiedRuby#process。

ParseTree 的原始输出类似于 Ruby 的内部解析树;UnifiedRuby 则是 ParseTree 默认输出的经过清理的简化版本。

Sexp_Processor 3.0.0目前已经成为一个独立的 Gem(曾经是 ParseTree 的一部分)。Sexp_processor 允许编写和运行访问者,并以此来分析 ParseTree 的 s- 表达式。

Ruby2Ruby 1.2.0是一个将 ParseTree 的 s- 表达式转换为 Ruby 源代码的程序库,目前已经发布。所有对 ParseTree(程序库)的依赖已经移除,其代码已经重写,以 UnifiedRuby 作为输入。Flog 1.2.0是分析代码质量的工具,目前也已发布。

Ruby_parser 2.0也是由 Ryan Davis 开发的项目,是一个用 Ruby 写成的 Ruby 解析器。新版本包括大量的修改和 Bug 修正。几个修改如下:

* 棒极了!在速度上有 4 倍的提升!在词法分析和解析方面已经没有任何已知 bug 了![..]

* 新增 #store_comment 和 #comments [..] 

* 新增 bin/ruby_parse [..]

* 为每个 sexp 节点新增的文件和行号。添加了列(column)和范围(range)。[..]

 查看英文原文:ParseTree 3.0 Released, Many Related Libraries Updated

RubyDevOps语言 & 开发文化 & 方法