[prev in list] [next in list] [prev in thread] [next in thread]
List: ruby-talk
Subject: [ANN] ruby_parser 3.10.0 Released
From: Ryan Davis <ryand-ruby () zenspider ! com>
Date: 2017-07-17 23:00:22
Message-ID: 20170717230031.49549120810 () neon ! ruby-lang ! org
[Download RAW message or body]
ruby_parser version 3.10.0 has been released!
* home: <https://github.com/seattlerb/ruby_parser>
* bugs: <https://github.com/seattlerb/ruby_parser/issues>
* rdoc: <http://docs.seattlerb.org/ruby_parser>
ruby_parser (RP) is a ruby parser written in pure ruby (utilizing
racc--which does by default use a C extension). RP's output is
the same as ParseTree's output: s-expressions using ruby's arrays and
base types.
As an example:
def conditional1 arg1
return 1 if arg1 == 0
return 0
end
becomes:
s(:defn, :conditional1, s(:args, :arg1),
s(:if,
s(:call, s(:lvar, :arg1), :==, s(:lit, 0)),
s(:return, s(:lit, 1)),
nil),
s(:return, s(:lit, 0)))
Tested against 801,039 files from the latest of all rubygems (as of 2013-05):
* 1.8 parser is at 99.9739% accuracy, 3.651 sigma
* 1.9 parser is at 99.9940% accuracy, 4.013 sigma
* 2.0 parser is at 99.9939% accuracy, 4.008 sigma
Changes:
### 3.10.0 / 2017-07-17
* 4 minor enhancements:
* Added support for 'squiggly heredocs' (indented content). (jjoos)
* Bumped oedipus_lex to ~> 2.5.
* Bumped sexp_processor to ~> 4.9.
* Made STRICT_SEXP=1 safe: converted indexed sexps to semantic calls where needed.
* 5 bug fixes:
* Clear and restore cmdarg stack around defs args and body. (presidentbeef)
* Conditionalize use of sexp_body= to make it compatible w/ sexp_processor 4.9.0
* Fix up line numbers in strings with newlines and `#`. (presidentbeef)
* Fixed line numbers of resbodies.
* Fixed some tracking of lexical state. Fixes bug #249.
Unsubscribe: <mailto:ruby-talk-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk>
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic