Ruby (programming language)
| Ruby | |
|---|---|
| Paradigm | Multi-paradigm: functional, imperative, object-oriented, reflective |
| Designed by | Yukihiro Matsumoto |
| Developer | Yukihiro Matsumoto, et al. |
| First appeared | 1995 |
| Stable release | 4.0
/ 25 December 2025 |
| Typing discipline | Duck, dynamic, strong |
| Scope | Lexical, sometimes dynamic |
| Implementation language | C |
| OS | Cross-platform |
| License | Ruby |
| Filename extensions | .rb, .ru |
| Website | ruby-lang.org |
| Major implementations | |
| Ruby MRI, TruffleRuby, YARV, Rubinius, JRuby, RubyMotion, mruby | |
| Influenced by | |
| Ada, BASIC, C++, CLU, Dylan, Eiffel, Lisp, Lua, Perl, Python, Smalltalk | |
| Influenced | |
| Clojure, CoffeeScript, Crystal, D, Elixir, Groovy, Julia, Mirah, Nu, Rust, Swift | |
| |
Ruby is a general-purpose programming language. Its design puts an emphasis on programming productivity and simplicity. In Ruby, everything is an object, including primitive data types. Yukihiro "Matz" Matsumoto started to develop the language in the mid-1990s in Japan.
Ruby is interpreted, high-level, and dynamically typed; its interpreter uses garbage collection and just-in-time compilation. It supports multiple programming paradigms, including procedural, object-oriented, and functional programming. According to the creator, Ruby was influenced by Perl, Smalltalk, Eiffel, Ada, BASIC, and Lisp.