The Ruby Programming Language: Everything You Need to Know
The Ruby Programming Language is the authoritative guide to Ruby and provides comprehensive coverage of versions 1.8 and 1.9 of the language. It was written (and illustrated!) by an all-star team:
The book also includes a long and thorough introduction to the rich API of the Ruby platform, demonstrating -- with heavily-commented example code -- Ruby's facilities for text processing, numeric manipulation, collections, input/output, networking, and concurrency. An entire chapter is devoted to Ruby's metaprogramming capabilities.
The Ruby Programming Language documents the Ruby language definitively but without the formality of a language specification. It is written for experienced programmers who are new to Ruby, and for current Ruby programmers who want to challenge their understanding and increase their mastery of the language.
What people are saying - Write a review
This book should be considered the paradigm for books on programming
languages. It is precise and concise; where possible, the examples
demonstrate not only syntax but also intended use. No silly examples
of, say, arrays of stones, playing on a bad and boring stone age
television programme here!
And the authors are helped in that they are describing a truly
fascinating language. It is object oriented through and through, has
all the usual features of programming languages such as conditional
statements and "for" and "while loops, but it has more, much more.
The concept of an iterator is fundamental to the language; indeed, a
ruby programmer soon finds himself thinking in terms of iterators,
internal and external, rather than "for" loops. This is the sort of
language that appeals to programmers because it's truly fun to program,
and this is the best book on a programming language in existence. It's
But the one big problem is, very unfortunately, that ruby is buggy.
Worse, there doesn't appear to be anyone to send bug reports to; the
unfortunate user is left to stew in his own juice. I've even
experienced ruby executing a program differently depending on whether or
not a comment line is deleted or not. Different ruby versions yield
different results on the same program, and, when ruby signals a
programming error and you enter the debugger, ruby's behaviour suddenly
differs from that without the debugger. And when you are in the
debugger, and the error is at line 12345, and you are at line 10, which
is a loop consisting 1,000 iterations, you try to skip the loop, but
then you never regain control before the error. So you sit there and
single step through the loop, solely so that you can still follow the
execution once the loop has terminated.
Unless these bugs are removed, or even reported so that somebody can
look into them, the ruby language and with it this book cannot be
recommended to anybody except the masochistic.
Chapter 4 Expressions and Operators
Chapter 5 Statements and Control Structures
Chapter 6 Methods Procs Lambdas and Closures
Chapter 7 Classes and Modules