search for books and compare prices
Tables of Contents for Programming Ruby
Chapter/Section Title
Page #
Page Count
Foreword
xxi
 
Preface
xxiii
 
Roadmap
1
4
Part I---Facets of Ruby
Ruby. New
5
14
Ruby Is an Object-Oriented Language
5
2
Some Basic Ruby
7
2
Arrays and Hashes
9
2
Control Structures
11
1
Regular Expressions
12
1
Blocks and Iterators
13
3
Reading and 'Riting
16
1
Onward and Upward
17
2
Classes, Objects, and Variables
19
16
Inheritance and Messages
21
3
Objects and Attributes
24
2
Class Variables and Class Methods
26
4
Access Control
30
2
Variables
32
3
Containers, Blocks, and Iterators
35
14
Containers
35
5
Blocks and Iterators
40
9
Standard Types
49
18
Numbers
49
2
Strings
51
5
Ranges
56
2
Regular Expressions
58
9
More About Methods
67
6
Defining a Method
67
2
Calling a Method
69
4
Expressions
73
18
Operator Expressions
74
1
Miscellaneous Expressions
75
1
Assignment
76
3
Conditional Execution
79
4
Case Expressions
83
1
Loops
84
5
Variable Scope and Loops
89
2
Exceptions, Catch, and Throw
91
8
The Exception Class
91
1
Handling Exceptions
92
4
Raising Exceptions
96
1
Catch and Throw
97
2
Modules
99
8
Namespaces
99
1
Mixins
100
4
Iterators and the Enumerable Module
104
1
Including Other Files
105
2
Basic Input and Output
107
6
What Is an IO Object?
107
1
Opening and Closing Files
108
1
Reading and Writing Files
108
3
Talking to Networks
111
2
Threads and Processes
113
12
Multithreading
113
4
Controlling the Thread Scheduler
117
1
Mutual Exclusion
117
3
Running Multiple Processes
120
5
When Trouble Strikes
125
12
Ruby Debugger
125
1
Interactive Ruby
126
3
But It Doesn't Work!
129
1
But It's Too Slow!
130
7
Part II---Ruby in its Setting
Ruby and Its World
137
8
Command-Line Arguments
137
3
Program Termination
140
1
Environment Variables
140
1
Where Ruby Finds Its Modules
141
1
Build Environment
142
3
Ruby and the Web
145
8
Writing CGI Scripts
145
4
Embedding Ruby in HTML
149
3
Improving Performance
152
1
Ruby TK
153
12
Simple Tk Application
153
1
Widgets
154
3
Binding Events
157
1
Canvas
158
2
Scrolling
160
2
Translating from Perl/Tk Documentation
162
3
Ruby and Microsoft Windows
165
6
Ruby Ports
165
1
Running Ruby Under Windows
165
1
Win32API
166
1
Windows Automation
166
5
Extending Ruby
171
30
Ruby Objects in C
171
2
Writing Ruby in C
173
2
Sharing Data Between Ruby and C
175
7
Memory Allocation
182
1
Creating an Extension
183
4
Embedding a Ruby Interpreter
187
1
Bridging Ruby to Other Languages
188
1
Ruby C Language API
189
12
Part III---Ruby Crystallized
The Ruby Language
201
40
Source Layout
201
2
The Basic Types
203
8
Names
211
2
Variables and Constants
213
7
Predefined Variables
216
4
Expressions
220
7
Boolean Expressions
223
1
if and unless Expressions
224
1
case Expressions
225
1
Loop Constructs
226
1
Method Definition
227
2
Invoking a Method
229
3
Aliasing
232
1
Class Definition
232
2
Module Definitions
234
1
Access Control
235
1
Blocks, Closures, and Proc Objects
236
1
Exceptions
237
1
Catch and Throw
238
3
Classes and Objects
241
16
How Classes and Objects Interact
241
7
Class and Module Definitions
248
5
Top-Level Execution Environment
253
1
Inheritance and Visibility
254
1
Freezing Objects
255
2
Locking Ruby in the Safe
257
6
Safe Levels
258
1
Tainted Objects
259
4
Reflection, ObjectSpace, and Distributed Ruby
263
16
Looking at Objects
264
1
Looking at Classes
265
1
Calling Methods Dynamically
266
3
System Hooks
269
2
Tracing Your Program's Execution
271
1
Marshaling and Distributed Ruby
272
4
Compile Time? Runtime? Anytime!
276
3
Part IV---Ruby Library Reference
Built-In Classes
279
126
Alphabetical Listing
280
125
Array
282
12
Bignum
294
1
Binding
295
1
Class
296
2
Continuation
298
1
Dir
299
3
Exception
302
3
FalseClass
305
1
File
305
8
File: :Stat
313
5
Fixnum
318
1
Float
319
2
Hash
321
7
Integer
328
1
IO
329
11
MatchData
340
2
Method
342
1
Module
343
10
NilClass
353
1
Numeric
354
2
Object
356
7
Proc
363
1
Range
364
2
Regexp
366
2
String
368
17
Struct
385
3
Struct: :Tms
388
1
Symbol
388
1
Thread
389
7
ThreadGroup
396
1
Time
397
7
TrueClass
404
1
Built-In Modules
405
36
Alphabetical Listing
405
36
Comparable
406
1
Enumerable
407
3
Errno
410
1
FileTest
411
3
GC
414
1
Kernel
415
17
Marshal
432
1
Math
433
1
ObjectSpace
434
1
Process
435
6
Standard Library
441
26
Complex
441
2
Date
443
6
English
449
1
Find
450
1
File
450
2
GetoptLong
452
3
mkmf
455
2
ParseDate
457
1
profile
458
1
PStore
458
2
Tempfile
460
2
Mutex
462
1
ConditionVariable
463
1
timeout
464
1
WeakRef
464
3
Object-Oriented Design Libraries
467
6
visitor
467
1
delegate
468
2
observer
470
2
singleton
472
1
Network and Web Libraries
473
36
Socket-Level Access
473
13
BasicSocket
474
2
IPSocket
476
1
TCPSocket
477
1
SOCKSSocket
478
1
TCPServer
478
1
UDPSocket
479
1
UNIXSocket
480
1
UNIXServer
481
1
Socket
482
4
Higher-Level Access
486
15
Net: :FTP
486
4
Net: :HTTP
490
2
Net: :HTTPResponse
492
1
Net: :POP
493
1
Net: :APOP
494
1
Net: :POPMail
495
1
Net: :SMTP
496
1
Net: :Telnet
497
4
CGI Development
501
8
CGI
501
7
CGI: :Session
508
1
Microsoft Windows Support
509
28
WIN320LE
509
1
WIN320LE_EVENT
510
2
Win32API
512
5
Part V---Appendices
A Embedded Documentation
517
6
Inline Formatting
520
1
Cross References
521
1
Method Names
521
1
Including Other Files
522
1
Using rdtool
522
1
Mandatory Disclaimer
522
1
B Interactive Ruby Shell
523
8
Command Line
523
1
Initialization File
523
2
Commands
525
3
Restrictions
528
1
rtags, xmp, and the Frame Class
528
3
C Support
531
4
Web Sites
531
1
Download Sites
532
1
Usenet Newsgroup
532
1
Mailing Lists
532
1
Bug Reporting
533
2
D Bibliography
535
2
Index
537