Skip to content

Instantly share code, notes, and snippets.

@eregon
Last active June 28, 2022 10:52
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save eregon/7e35bfbc88988d4296273c80091589f1 to your computer and use it in GitHub Desktop.
Save eregon/7e35bfbc88988d4296273c80091589f1 to your computer and use it in GitHub Desktop.
A list of Ruby parsers
Name Written in Usable in API and notes
CRuby parse.y C usable from C (maybe) no official API, not easily reusable/not standalone
Ripper C Ruby awkward API
RubyVM::AbstractSyntaxTree C Ruby awkward API, not portable API
whitequark/parser Ruby Ruby Nice API
ruby_parser Ruby Ruby up-to-date?
lib-ruby-parser Rust C/C++/Ruby (see bindings
natalie_parser C++ C++/C
JRuby's parser Java Java depends on quite a few JRuby internals
jruby-parser Java Java does not depend on JRuby internals, but infrequently updated

Lesser known/WIP:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment