Skip to content

Programming Ruby

Spend $50 to get a free DVD!

ISBN-10: 0974514055

ISBN-13: 9780974514055

Edition: 2nd 2005 (Revised)

Authors: Dave Thomas, Chad Fowler, Andy Hunt

List price: $44.95
Blue ribbon 30 day, 100% satisfaction guarantee!
what's this?
Rush Rewards U
Members Receive:
Carrot Coin icon
XP icon
You have reached 400 XP and carrot coins. That is the daily max!

Ruby is an increasingly popular, fully object-oriented dynamic programming language, hailed by many practitioners as the finest and most useful language available today. When Ruby first burst onto the scene in the Western world, the Pragmatic Programmers were there with the definitive reference manual, "Programming Ruby: The Pragmatic Programmer's Guide. Now in its Second Edition, author Dave Thomas has expanded the famous Pickaxe book with over 200 pages of new content, covering all the new and improved language features of Ruby 1.8 and standard library modules. The Pickaxe contains four major sections: An acclaimed tutorial on using Ruby. The definitive reference to the language. …    
Customers also bought

Book details

List price: $44.95
Edition: 2nd
Copyright year: 2005
Publisher: Pragmatic Programmers, LLC, The
Publication date: 10/11/2004
Binding: Paperback
Pages: 864
Size: 7.25" wide x 9.00" long x 1.75" tall
Weight: 2.838
Language: English

Chad Fowler is co-director of Ruby Central, Inc., and remains an active, driving force in the Ruby community.

Foreword to the First Edition
Foreword to the Second Edition
Road Map
Facets of Ruby
Getting Started
Installing Ruby
Running Ruby
Ruby Documentation: RDoc and ri
Ruby Is an Object-Oriented Language
Some Basic Ruby
Arrays and Hashes
Control Structures
Regular Expressions
Blocks and Iterators
Reading and 'Riting
Onward and Upward
Classes, Objects, and Variables
Inheritance and Messages
Objects and Attributes
Class Variables and Class Methods
Access Control
Containers, Blocks, and Iterators
Blocks and Iterators
Containers Everywhere
Standard Types
Regular Expressions
More about Methods
Defining a Method
Calling a Method
Operator Expressions
Miscellaneous Expressions
Conditional Execution
Case Expressions
Variable Scope, Loops, and Blocks
Exceptions, Catch, and Throw
The Exception Class
Handling Exceptions
Raising Exceptions
Catch and Throw
Iterators and the Enumerable Module
Composing Modules
Including Other Files
Basic Input and Output
What Is an IO Object?
Opening and Closing Files
Reading and Writing Files
Talking to Networks
Threads and Processes
Controlling the Thread Scheduler
Mutual Exclusion
Running Multiple Processes
Unit Testing
Test::Unit Framework
Structuring Tests
Organizing and Running Tests
When Trouble Strikes
Ruby Debugger
Interactive Ruby
Editor Support
But It Doesn't Work!
But It's Too Slow!
Ruby in Its Setting
Ruby and Its World
Command-Line Arguments
Program Termination
Environment Variables
Where Ruby Finds Its Modules
Build Environment
Interactive Ruby Shell
Command Line
Rtags and xmp
Documenting Ruby
Adding RDoc to Ruby Code
Adding RDoc to C Extensions
Running RDoc
Displaying Program Usage
Package Management with RubyGems
Installing RubyGems
Installing Application Gems
Installing and Using Gem Libraries
Creating Your Own Gems
Ruby and the Web
Writing CGI Scripts
Improving Performance
Choice of Web Servers
SOAP and Web Services
More Information
Ruby TK
Simple TK Application
Binding Events
Translating from Perl/TK Documentation
Ruby and Microsoft Windows
Getting Ruby for Windows
Running Ruby Under Windows
Windows Automation
Extending Ruby
Your First Extension
Ruby Objects in C
The Jukebox Extension
Memory Allocation
Ruby Type System
Creating an Extension
Embedding a Ruby Interpreter
Bridging Ruby to Other Languages
Ruby C Language API
Ruby Crystallized
The Ruby Language
Source Layout
The Basic Types
Variables and Constants
Method Definition
Invoking a Method
Class Definition
Module Definitions
Access Control
Blocks, Closures, and Proc Objects
Catch and Throw
Duck Typing
Classes Aren't Types
Coding like a Duck
Standard Protocols and Coercions
Walk the Walk, Talk the Talk
Classes and Objects
How Classes and Objects Interact
Class and Module Definitions
Top-Level Execution Environment
Inheritance and Visibility
Freezing Objects
Locking Ruby in the Safe
Safe Levels
Tainted Objects
Reflection, ObjectSpace, and Distributed Ruby
Looking at Objects
Looking at Classes
Calling Methods Dynamically
System Hooks
Tracing Your Program's Execution
Marshaling and Distributed Ruby
Compile Time? Runtime? Anytime!
Ruby Library Reference
Built-in Classes and Modules
Alphabetical Listing
Standard Library
Socket Library
Mkmf Reference
Web Sites
Download Sites
Usenet Newsgroup
Mailing Lists
Summary Tables