Ruby (programming language)

Ruby
ParadigmMulti-paradigm: functional, imperative, object-oriented, reflective
Designed byYukihiro Matsumoto
DeveloperYukihiro Matsumoto, et al.
First appeared1995 (1995)
Stable release
3.4.4  / 14 May 2025 (14 May 2025)
Typing disciplineDuck, dynamic, strong
ScopeLexical, sometimes dynamic
Implementation languageC
OSCross-platform
LicenseRuby License
Filename extensions.rb, .ru
Websiteruby-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, Ring, Rust, Swift

Ruby is a general-purpose programming language. It was designed with an emphasis on programming productivity and simplicity. In Ruby, everything is an object, including primitive data types. It was developed in the mid-1990s by Yukihiro "Matz" Matsumoto 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.