History of Ruby language

In the own words of Ruby creator, Matz, while sending an email message to ruby-talk email group,

Well, Ruby was born in Feb. 23 1993. At that day, I was talking with my colleague about the possibility of object-oriented scripting language. I knew Perl (Perl4, not Perl5), but I didn’t like it really, because it had smell of toy language (it still has). The object-oriented scripting language seemed very promising. I knew Python then. But I didn’t like it, because I didn’t think it was a true object-oriented language. OO features are appeared to be add-on to the language
— Matz (source)

He looked around and having not found a language suited for him, decided to create his own. After spending several months writing an interpreter, he finally published the first public version of Ruby (0.95) to various Japanese domestic newsgroups in December, 1995.


Ruby originated during an online chat session between Matsumoto and Keiju Ishitsuka on February 24, 1993, before any code had been written for the language. Initially two names were proposed: “Coral” and “Ruby”. Matsumoto chose the latter in a later e-mail to Ishitsuka.

First Appearance

Ruby 0.95 was announced on Japanese domestic newsgroups on December 21, 1995.


Ruby was influenced by languages like Perl, Smalltalk, Eiffel, Ada, and Lisp.

Early Releases

  • Ruby 1.0: December 25, 1996[15]
  • Ruby 1.2: December 1998
  • Ruby 1.4: August 1999
  • Ruby 1.6: September 2000
  • Ruby 1.8: August 2003
  • Ruby 1.9: Christmas 2007

Other Releases

  • Ruby 1.9.3: Oct 31, 2011 (Popular Release)[Obsolete: 23rd Feb, 2015]
  • Ruby 2.0: February 24, 2013 (Obsolete: 22nd Feb, 2016)
  • Ruby 2.1: Christmas Day in 2013 (Improved Semantic Versioning)[Obsolte: 1st April, 2017]
  • Ruby 2.2: Christmas Day in 2014
  • Ruby 2.3: Christmas Day in 2015
  • Ruby 2.4: Christmas Day in 2016
  • Ruby 2.5: Christmas Day in 2017
  • Ruby 2.6: Christmas Day in 2018
  • Ruby 2.7: Christmas Day in 2019
  • JRuby, a mixed Java and Ruby implementation that runs on the Java virtual machine.
  • TruffleRuby, a Java implementation using the Truffle language implementation framework with GraalVM
  • Rubinius, a C++ bytecode virtual machine that uses LLVM to compile to machine code at runtime.

If interested you can [read about other implementations].(https://en.wikipedia.org/wiki/Ruby_(programming_language)#Implementations){:target=”_blank”}.