Previous
Next
Table of contents
In a phrase,
a simple and powerful object oriented scripting language.
Like perl, Ruby has its strength in processing texts. Another
example is a server application for everyday use.
Ruby has adopted various good features from many languages, and
became a different language from others.
The features of Ruby are as follows:
- Simple syntax,
- Basic OO features(e.g. classes, methods),
- Special OO features(e.g. Mix-in, singleton methods),
- Operator overloading,
- Exception handling,
- Iterators and closures,
- Garbage collection,
- Dynamic loading (depends on the architecture),
- High transportability (runs on various Unices, DOS, Mac)
The following is an exerpt from what matz wrote in [ruby-talk:00394] on June 11, 1999.
matz wanted to choose the name of the language from jewel names, influenced by
Perl, and he named Ruby after his colleague's birthstone.
Later, he realized that ruby comes right after pearl in several situation,
like birthstones(pearl => June, ruby => July), font sizes
(pearl => 5pt,
ruby => 5.5pt.). He thought Ruby was the good name for the scripting
language newer (and hopefully better) than Perl.
matz hopes that Ruby will be the replacement of Perl <his wink>.
The following is what matz wrote in [ruby-talk:00382] on June 4, 1999.
The birthday of Ruby is corrected in [ruby-list:15977].
Well, Ruby was born in Feb. 24 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. I, as a language mania and OO fan for 15
years, really really wanted a genuine object-oriented, easy-to-use
object-oriented scripting language. I looked for, but couldn't find
one.
So, I decided to make it. It took several months to make the
interpreter run. I put it the features I love to have in my language,
such as iterators, exception handling, garbage collection.
Then, I reorganized the features in Perl into class library, and
implemented them. I posted Ruby 0.95 to the Japanese domestic
newsgroups in Dec. 1995.
Since then, mail lists are established, web pages are formed. Highly
active discussion was held in the mail lists. The oldest list
ruby-list has 14789 messages until now.
Ruby 1.0 was released in Dec. 1996, 1.1 in Aug. 1997, 1.2 (stable
version) and 1.3 (development version) were released in Dec. 1998.
Latest version of Ruby can be downloaded from
ftp://ftp.netlab.co.jp/pub/lang/ruby/
Mirror sites are as follows:
For gnu-win32 and djgpp binaries are available under pc/
.
Ruby official Home Page is
http://www.netlab.co.jp/ruby/jp/
(in Japanese) and
http://www.netlab.co.jp/ruby/
(in English).
There are four mailing lists now talking Ruby.
First three are in Japanese, and the last one is in English.
See Ruby Home Page.
There is a search form for past mails in
http://blade.nagaokaut.ac.jp/ruby/ruby-talk/index.shtml
By matz:
A rubyist regards him/herself more than a customer to Ruby. For
example:
- recommending Ruby to colleagues,
- editing FAQs of Ruby,
- opening a BBS on Ruby,
- writing a Ruby book,
- mailing to the author of Ruby to encourage,
- the author of Ruby ^^;;;
On the other hand, let's call those who show high technical level
on Ruby as Ruby hackers. For example:
- writing an extension module of Ruby,
- writing patches to fix Ruby bugs,
- writing Ruby transports to djgpp or win32,
- writing a useful (and considerably large) program in Ruby,
- writing an obfuscated script in Ruby,
- the author of Ruby ^^;;;
These titles are given to those who believe themselves as such,
but the preceding phrases have almost identified the names who are Rubyists
and Ruby hackers in my view.
Officially, the language is called "Ruby". But the command name
is "ruby", and it is allowed to use ruby instead of Ruby when
it is not bizarre in the context.
RUBY is not allowed to be used as the language name.
Originally, or historically, it was called ruby.
A Ruby reference book by matz et al is to be published in the autumn of
1999 (Japanese).
Mastering Regular Expressions, by Jeffrey Friedl, (the Hip Owl Book):
ISBN 1-56592-257-3 (English) from O'Reilly & Associates,
is a reference work that covers the art and implementation of
regular expressions in various programming languages. It is
useful to understand Ruby regular expressions.
The syntax of Ruby has been rather stable since Ruby 1.0. But
as there are new features and fixes incessantly, the documents
are not necessarily following the latest source codes. And
matz says that the source is the document, even bugs are shown
there.
When you become confused, feel free to ask in
ruby-talk, and you will get timely answers from matz himself, the
author of the language, from other gurus, and from those who
dug the same hole.
To make a question, just show the result of ruby -v
,
and your script.
If you were using irb
, it has its own limitation. Try the
script using irb --single-irb
or ruby itself.
There might be similar questions in the mailing list, and it might
be a Netiqutte to read through recent mails (RFC1855:3.1.1, 3.1.2),
but it is very hard
said than done. Do ask in the list, and there will be a right
answer.
Previous
Next
Table of contents