CSC/ECE 517 Fall 2011/ch1 2a av
Introduction to Ruby
Ruby is a dynamic, reflective, object oriented, single-pass interpreted programming language. Ruby was influenced by Perl, Smalltalk, Eiffel and Lisp. It supports functional, imperative, reflective, object oriented and many other programming paradigms.
Ruby is said to incorporate the "Principle of Lease Surprise" or POLA("Principle of Lease Astonishment").
History
Ruby was created in 1993 in Japan, by Yukihiro Matsumoto ("Matz"). The intent of developing Ruby was to have a new language that balance functional programming and iterative programming. Matsumoto has also stated that he wanted a scripting language that was more powerful than Perl and more Object Oriented than Python.(ref)
Naming
The terms "Coral" and "Ruby" were the two proposed names for the language. Matsumoto's choose the term "Ruby" because it was one of his colleague’s birthstone.
Releases and Versions
Ruby 0.95 was the first public release in 1995. Three more versions were released immediately.
Ruby 1.0 was released in 1996.
Ruby 1.3 was the next release in 1999.
Since then several versions of Ruby have been released with added concepts and features.
The recent stable version is Ruby 1.9.2 which has significant improvements over Ruby 1.8 series.
Currently, Ruby 1.9.3 is under development with a dual-license of Ruby and BSD.
Ruby on Rails
With the release of Ruby on Rails in 2005, an MVC based web development framework written in Ruby, the new language gained mass acceptance and became famous.
In 2006, active user groups were formed in the world's major cities and several Ruby related conferences were held, making it one of the most popular and widely acceptable language. In 2007, TIOBE programming language popularity index (link) state Ruby as the 10th most popular language.