search for books and compare prices
Tables of Contents for Elements of Programming With Perl
Chapter/Section Title
Page #
Page Count
preface
xi
4
acknowledgments
xv
 
Part I Introductory elements
3
56
1 Introduction
3
15
1.1 On programming
4
3
1.2 On Perl
7
8
Getting started
10
1
Running Perl
11
1
Getting help
12
3
1.3 A bigger picture
15
3
2 Writing code
18
14
2.1 Structure
20
1
2.2 Naming
21
3
2.3 Comments
24
5
2.4 Being strict
29
2
2.5 A quick style guide
31
1
3 Writing programs
32
27
3.1 A first program
34
15
Specification
34
1
Design
35
5
Coding
40
5
Testing and debugging
45
2
Maintenance
47
2
3.2 faqgrep
49
6
3.3 Exercises
55
4
Part II Essential elements
59
124
4 Data: types and variables
59
19
4.1 Scalar data
60
5
Scalar variables
63
2
4.2 Expressions
65
2
4.3 List data
67
6
Array variables
69
2
Hash variables
71
2
4.4 Context
73
1
4.5 References to variables
74
2
4.6 Putting it together
76
1
4.7 Exercises
77
1
5 Control structures
78
20
5.1 Selection statements
80
4
5.2 Repetition: loops
84
5
5.3 Logical operators
89
3
5.4 Statement modifiers
92
1
5.5 Putting it together
92
5
5.6 Exercises
97
1
6 Simple I/O and text processing
98
23
6.1 File handles
99
4
6.2 Pattern matching
103
10
Matching constructs
105
2
Regex language constructs
107
5
Matching and substitution operators
112
1
6.3 Split and join
113
1
6.4 The DATA file handle
114
2
6.5 Putting it together
116
4
6.6 Exercises
120
1
7 Functions
121
20
7.1 Scope
123
4
7.2 Global variables
127
1
7.3 Parameters
127
2
7.4 Return values
129
2
7.5 Designing functions
131
3
7.6 Parameters and references
134
1
7.7 Recursion
135
2
7.8 Putting it together
137
3
Revisiting the mathq program
137
2
Routine examples
139
1
7.9 Exercises
140
1
8 References and aggregate data structures
141
19
8.1 Creating references
143
7
Nested or multi-dimensional arrays
147
2
Nested hashes
149
1
Mixed structures
149
1
8.2 Scope and references
150
2
8.3 References to functions
152
3
Closures
153
2
8.4 Nested structures on the fly
155
3
8.5 Review
158
1
8.6 Exercises
159
1
9 Documentation
160
23
9.1 User documentation and POD
161
3
9.2 Source code documentation
164
6
Other uses of LP
169
1
9.3 Tangling code
170
8
A simple tangler
170
8
9.4 Further resources
178
5
Part III Practical elements
183
88
10 Regular expressions
183
19
10.1 The basic components
184
4
10.2 The character class
188
3
Search and replace: capitalize headings
189
2
Character class shortcuts
191
1
10.3 Greedy quantifiers: take what you can get
191
1
10.4 Non-greedy quantifiers: take what you need
192
1
10.5 Simple anchors
193
2
10.6 Grouping, capturing, and backreferences
195
3
Prime number regex
196
2
10.7 Other anchors: lookahead and lookbehind
198
3
Inserting commas in a number
198
3
10.8 Exercises
201
1
11 Working with text
202
12
11.1 The match operator
203
4
Context of the match operator
206
1
11.2 The substitution operator
207
1
11.3 Strings within strings
208
3
11.4 Translating characters
211
1
11.5 Exercises
212
2
12 Working with lists
214
11
12.1 Processing a list
215
2
12.2 Filtering a list
217
1
12.3 Sorting lists
217
4
12.4 Chaining functions
221
2
12.5 Reverse revisited
223
1
12.6 Exercises
224
1
13 More I/O
225
9
13.1 Running external commands
226
1
13.2 Reading and writing from/to external commands
227
1
13.3 Working with directories
228
1
13.4 Filetest operators
229
1
13.5 faqgrep revisited
230
3
13.6 Exercises
233
1
14 Using modules
234
22
14.1 Installing modules
236
1
14.2 Using modules
237
1
14.3 File::Basename
238
1
14.4 Command line options
239
2
14.5 The dating game
241
2
14.6 Fetching webpages
243
6
Stock quotes and graphs
243
6
14.7 CGI.pm
249
4
14.8 Reuse, don't reinvent
253
2
14.9 Exercises
255
1
15 Debugging
256
15
15.1 Debugging by hand
257
5
15.2 The Perl debugger
262
9
Part IV Advanced elements
271
62
16 Modular programming
271
9
16.1 Modules and packages
272
2
16.2 Making a module
274
4
16.3 Why make modules?
278
1
16.4 Exercises
279
1
17 Algorithms and data structuring
280
12
17.1 Searching
281
2
17.2 Sorting
283
3
17.3 Heap sort
286
5
17.4 Exercises
291
1
18 Object-oriented programming and abstract data structures
292
23
18.1 What is OOP?
293
2
18.2 OOP in Perl
295
6
The basics
295
4
Inheritance
299
2
18.3 Abstract data structures
301
1
18.4 Stacks, queues, and linked lists
301
13
Stracks
301
6
Queues
307
2
Linked lists
309
5
18.5 Exercises
314
1
19 More OOP examples
315
16
19.1 The heap as an abstract data structure
316
4
19.2 Grades: an object example
320
10
19.3 Exercises
330
1
20 What's left?
331
2
appendix A Command line switches
333
3
appendix B Special variables
336
2
appendix C Additional resources
338
2
appendix D Numeric formats
340
2
glossary
342
6
index
348