Ruby (programming language): Difference between revisions

Content deleted Content added
Criticism: - Fixed error in criticism that said "variables are not required to be declared before use" as this is false. Tidied up metaprogramming criticism to mention the term Monkey Patching.
Line 24:
==History==
[[Image:Yukihiro Matsumoto.JPG|thumb|right|100px|Yukihiro Matsumoto, the creator of Ruby.]]
Ruby was conceived on [[February 24]] [[1993]] by [[Yukihiro Matsumoto]] blended parts of his favorite languages (Perl, Smalltalk, Eiffel, Ada, and Lisp) to form a new language that balanced functional programming with imperative programming.
The language was created by [[Yukihiro Matsumoto]], who started working on Ruby on [[February 24]], [[1993]], and released it to the public in 1995. "Ruby" was named as a gemstone because of a joke within Matsumoto's circle of friends alluding to the name of the [[Perl]] programming language.<ref>[http://www.linuxdevcenter.com/pub/a/linux/2001/11/29/ruby.html An Interview with the Creator of Ruby]</ref>
 
=== Etymology of the name "Ruby" ===
As of June 2008, the latest stable version of the reference implementation is 1.8.7. Apart from the reference, several other [[virtual machine]]s are being developed for Ruby. These include [[JRuby]], a port of Ruby to the [[Java (programming language)|Java]] platform, [[IronRuby]], an implementation for the [[.NET Framework]] produced by [[Microsoft]], and [[Rubinius]], an [[Interpreter (computing)|interpreter]] modeled after [[self-hosting]] [[Smalltalk]] virtual machines.
 
The name "Ruby" was conceived during an online chat session between Matsumoto and [[Keiju Ishitsuka]] before any code had been written for the language.<ref>http://blog.nicksieger.com/articles/2006/10/20/rubyconf-history-of-ruby History of Ruby</ref> A name of a precious gemstone was chosen to acknowledge the new language's relationship with the [[Perl]] programming language, with two names being initially proposed: Coral and Ruby.<ref>http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/88819</ref>
===Ruby-GNOME2===
{{cleanup-section|date=August 2008}}
Ruby-GNOME2 is a set of Ruby language bindings for the [[GNOME]] 2.0 development environment. This is the next generation of Ruby-GNOME, and works with [[GTK+]]2.0 or later.
 
<pre>
Ruby-GNOME2 is [[free software]] and licensed under the [[LGPL]].
matz> Let us decide the codename now
matz> tentative one.
keiju> Ok.
matz> What is your best up to now?
keiju> I'm content with coral.
matz> I thought ruby is cool as a codename, isn't it
keiju> Well. ruby is also good.
matz> But, coral is also good
matz> arrr
</pre>
 
"Ruby" was settled on as the name by Matsumoto in a later email to Ishitsuka.<ref>http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/88819</ref> It was later recognized that [[pearl]] is the [[birthstone]] for the month of [[June]], while [[ruby]] is the birthstone for [[July]], implying an incremental relationship to Perl.<ref>[http://www.linuxdevcenter.com/pub/a/linux/2001/11/29/ruby.html An Interview with the Creator of Ruby]</ref>
 
=== First publication ===
 
Ruby 0.95 was available to the public, that is Japanese netnews users. At this time the [http://blade.nagaokaut.ac.jp/ruby/ruby-list/index.shtml ruby-list ML] was launched with the first email: ruby-0.95 test failed.<ref>http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/1</ref>
 
=== Ruby-GNOME2 1.8.7 ===
 
As of June 2008, the latest stable version of the reference implementation is 1.8.7. Apart from the reference, several other [[virtual machine]]s are being developed for Ruby. These include [[JRuby]], a port of Ruby to the [[Java (programming language)|Java]] platform, [[IronRuby]], an implementation for the [[.NET Framework]] produced by [[Microsoft]], and [[Rubinius]], an [[Interpreter (computing)|interpreter]] modeled after [[self-hosting]] [[Smalltalk]] virtual machines.
 
==Philosophy==