A collection of awesome Rubies (compilers, interpreters, virtual machines, parsers, doc generators, version managers, etc.)
[ANNOUNCEMENT] Looking for awesome Ruby events (meetups, conferences, camps, etc.) from around the world)? See the Awesome Events List @ Planet Ruby.
- Ruby, - also known as Matz's Ruby Interpreter (MRI) or CRuby; using the YARV (Yet another Ruby VM) since version 1.9
- 2014: 2.2 (Dec/24)
- 2013: 2.1 (Dec/24)
- 2012: 2.0 (Feb/24, 2013)
- JRuby, - Ruby on the Java Virtual Machine (JVM)
- Upcoming: v9.0.0.0
- 2014: v1.7.x
- mruby, - lightweight Ruby; designed for linking and embedding within your application
- Rubinius (rbx), - designed for concurrency; uses a low-pause generational garbage collector and LLVM-based just-in-time (JIT) native machine code compiler; core library and tools coded in Ruby
- Topaz, - Ruby coded in Python on top of RPython (the toolchain that powers PyPy)
- GoRuby - Ruby coded in Go
- MagLev, - a ruby interpreter built on top of the GemStone/S (64-bit) Virtual Machine (VM); note - to run MagLev you need a commercial GemStone/S Server (license)
- tinyrb, - a tiny subset of Ruby with a Lua'esc Virtual Machine (VM)
- IronRuby, - a ruby interpreter built on top of the Microsoft .NET Common Language Runtime (CLR)
- MacRuby - a ruby interpreter built on top of Apple's Objective-C/Cocoa library
- Ruby Enterprise Edition (REE) - builds on top of MRI Rubies, versions 1.8.X and later
- SmallRuby - a ruby interpreter built on top of the Smalltalk/X virtual machine
- Opal, - source-to-source compiler
- rubys/ruby2js - minimal yet extensible Ruby to JavaScript converter
- RubyJS, - JavaScript standard library based on the Ruby core-lib
- Crystal, - compile to machine code; run a ye good olde binary
- Mirah, - formerly known as Duby; compiles to Java bytecode; no (extra) runtime library required
- RubyMotion - commercial compiler for Apple iOS/Cocoa
- Elixir - Ruby-inspired syntax; a dynamic, functional language for the Erlang VM compiles to BEAM instructions (bytecode)
- rvm, - Ruby enVironment Manager; 27,000 lines of shell scripts to manage your rubies (overwrites your cd)
- rbenv - intercepts Ruby commands using shim executables added into your $PATH
- chruby - changes the current Ruby
- Ruby under a Microscope - An Illustrated Guide to Ruby Internals by Pat Shaughnessy; No Starch Press; 360 pages; Nov 2013
- Ruby Performance Optimization: Why Ruby Is Slow, and How to Fix It by Alexander Dymo; The Pragmatic Programmers
- The Ruby Bibliography,
- Streem Lang - prototype of stream based programming language by Yukihiro Matsumoto
- RubyBench, - Ruby Releases Benchmarks
- Contracts for Ruby (contracts.ruby) - a contract is one line of code that you write above a method definition; it validates the arguments to the method, and validates the return value of the method
- Rubype (Ruby+Type) - gradual type checking for Ruby
- Typedocs - method type annotations for Ruby
- Typecheck - type checking for Ruby methods
- Ruby QuickRef - Language, Standard Library, Tools
- Learn Ruby in Y Minutes, - A whirlwind tour of Ruby - learnruby.rb
- seattlerb/ruby_parser (RP) - a ruby parser written in ruby (using 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
- whitequark/parser - a ruby parser written in ruby; also includes an "unparser" to produce equivalent source code from the parser's Abstract Syntax Tree (AST)s
- YARD, - Yay! A Ruby Documentation Tool
- SDoc - RDoc generator to build searchable HTML documentation for Ruby code
- RDoc - RDoc produces HTML and online documentation for Ruby code
- Traveling Ruby, - self-contained, portable Ruby binaries
- Omnibus - mini language (that is, domain-specific language (DSL) for installers (that is, binary packages)
License
The awesome list is dedicated to the public domain. Use it as you please with no restrictions whatsoever.
Questions? Comments?
Send them along to the ruby-talk mailing list. Thanks!