search for books and compare prices
Tables of Contents for Perl Power!
Chapter/Section Title
Page #
Page Count
Preface
v
2
Introduction
vii
 
1 Introduction to Perl
1
108
1.1 Which Perl?
1
1
1.2 Additional modules
2
1
1.3 Starting successfully
2
1
1.4 Try and retry
2
2
1.4.1 Help is near
3
1
1.5 Data types and control structures
4
30
1.5.1 Scalars
4
3
1.5.2 Lists and arrays
7
11
1.5.3 Associative arrays
18
3
1.5.4 Functions, packages, and modules
21
4
1.5.5 References
25
4
1.5.6 Context
29
3
1.5.7 Anonymous variables
32
2
1.6 Conditions and error handling
34
2
1.7 Operators
36
1
1.8 Input and output
37
9
1.8.1 Read access
38
1
1.8.2 Write access
39
1
1.8.3 System-related file access
39
1
1.8.4 The printf function
40
2
1.8.5 Pipes
42
2
1.8.6 Reading user input
44
1
1.8.7 Further possibilities of data input
45
1
1.9 Access to the file system
46
9
1.9.1 File operators
47
1
1.9.2 The stat function
48
1
1.9.3 Manipulating files in the file system
49
1
1.9.4 Recursive directory search
50
5
1.10 Regular expressions
55
21
1.10.1 How does the matcher work?
59
1
1.10.2 Minimal matching
60
1
1.10.3 Regular expressions over several lines
61
1
1.10.4 Zero patterns
62
1
1.10.5 Searching for several expressions in a string
62
6
1.10.6 Masking of metacharacters
68
1
1.10.7 Sample application
68
2
1.10.8 Search and replace
70
3
1.10.9 Haute ecole of masking
73
3
1.11 Perl and the shell
76
1
1.12 Extended data structures
76
6
1.12.1 Arrays of arrays
77
1
1.12.2 Arrays of hashes
77
1
1.12.3 Summary of extended data constructs
78
4
1.13 Persistent storage of hashes in DBM files
82
2
1.14 Hints and tricks
84
9
1.14.1 Time and date
84
1
1.14.2 Getting the most out of here documents
84
1
1.14.3 Stricter variable conventions
85
1
1.14.4 Error messages with the Carp package
85
2
1.14.5 Exception handling
87
1
1.14.6 Protoypes
87
2
1.14.7 Structures with pack and unpack
89
2
1.14.8 Number and encoding systems
91
1
1.14.9 Dynamic code generation with eval
92
1
1.15 Operating system interfaces
93
3
1.15.1 Processes
93
1
1.15.2 Signals
94
1
1.15.3 Environment
95
1
Solutions to the exercises
96
13
2 Object-oriented programming
109
38
2.1 Introduction
109
3
2.1.1 Objects, data, and methods
109
1
2.1.2 Classes
110
1
2.1.3 Class relationships
111
1
2.2 Object-oriented Perl
112
4
2.2.1 Classes and modules
113
1
2.2.2 Objects
114
1
2.2.3 Methods
115
1
2.3 A first example
116
4
2.4 Object-oriented programming in detail
120
14
2.4.1 Package definition
120
1
2.4.2 Static and virtual methods
120
1
2.4.3 Constructors
121
1
2.4.4 Destructors
122
1
2.4.5 Instance variables
122
1
2.4.6 Inheritance
123
7
2.4.7 Aggregation
130
2
2.4.8 Association
132
1
2.4.9 Using relationship
133
1
2.5 Persistence by inheritance
134
6
2.5.1 Implementation
134
4
1.5.2 Example
138
2
2.6 Hints and tricks
140
7
2.6.1 The SUPER class
140
2
2.6.1 Delegation with AUTOLOAD
142
5
3 Pr t- -porter modules
147
22
3.1 IO:: File -- the new file handle generation
147
2
3.2 Time measurements
149
2
3.3 Graphics with the Chart package
151
4
3.3.1 Bars
151
2
3.3.2 Stacked bars
153
1
3.3.3 Pies
154
1
3.3.4 Lines and marking points
154
1
3.3.5 Paretos
154
1
3.4 Controlling processes with Proc:: Simple
155
1
3.5 Command line options
156
2
3.6 Terminal control
158
2
3.7 Text processing
160
1
3.8 Date calculations
161
3
3.9 Packing data in tar format
164
2
Solutions to the exercises
166
3
4 Graphical interfaces with Tk
169
80
4.1 Hello World
169
1
4.2 Fundamentals of graphical user interfaces
170
5
4.2.1 The X Window system
171
1
4.2.2 Toolkits and their widgets
171
1
4.2.3 Tk and Tcl
171
1
4.2.4 Event handling
172
1
4.2.5 Window hierarchy
173
1
4.2.6 Clients and servers in the X Window system
173
1
4.2.7 The window manager
174
1
4.3 Classes and objects in the Tk package
175
1
4.4 Options
176
2
4.5 The packer
178
4
4.6 Widgets in detail
182
32
4.6.1 Buttons
182
1
4.6.2 Check buttons
183
1
4.6.3 Radio buttons
184
2
4.6.4 Frames
186
3
4.6.5 Entry widgets
189
1
4.6.6 Labels
190
1
4.6.7 Listboxes
191
4
4.6.8 Menu widgets
195
6
4.6.9 Messages
201
1
4.6.10 Scales
202
2
4.6.11 Scrollbars
204
1
4.6.12 Text
205
4
4.6.13 Toplevel
209
2
4.6.14 Canvas
211
2
4.6.15 Photos
213
1
4.7 Widgets in interaction
214
6
4.7.1 The grab
214
1
4.7.2 Waiting for events
215
1
4.7.3 Dialog control
215
2
4.7.4 Communication with the window manager
217
1
4.7.5 Bindings
218
1
4.7.6 Fonts and colors
219
1
4.7.7 Bitmaps
219
1
4.8 Hints and tricks for Perl/Tk programming
220
7
4.8.1 Long-running functions
221
1
4.8.2 Periodical execution of functions
222
5
4.9 Sample applications
227
22
4.9.1 File selector
227
9
4.9.2 A small editor
236
4
4.9.3 Hyperlinks
240
2
4.9.4 Font viewer
242
2
4.9.5 Image viewer
244
1
4.9.6 Color viewer
245
2
4.9.7 Viewer for SDBM files
247
2
5 Perl programming on the Internet
249
128
5.1 Help from the CPAN
250
1
5.2 Netiquette
250
1
5.3 FTP
251
5
5.3.1 Net:: FTP
252
4
5.3.2 LWP:: Simple
256
1
5.4 Introduction to the World Wide Web (WWW)
256
4
5.4.1 HTML as a formatting language
257
1
5.4.2 Headers
258
1
5.4.3 Hidden actions
259
1
5.4.4 Errors
260
1
5.5 Programming with the LWP
260
16
5.5.1 Simple access via LWP:: Simple
260
3
5.5.2 General access via LWP:: UserAgent
263
8
5.5.3 Robots
271
1
5.5.4 Practice: checking Web pages
272
4
5.6 Analyzing URLs
276
2
5.7 Processing of HTML documents
278
15
5.7.1 ASCII and PostScript conversion
279
2
5.7.2 Analysis of HTML documents
281
4
5.7.3 Parsing HTML
285
4
5.7.4 Practice: the grabber
289
4
5.8 CGI programming
293
55
5.8.1 The client side
294
2
5.8.2 The server side
296
4
5.8.3 HTML output with the CGI module
300
8
5.8.4 Hints and tips for CGI programming
308
2
5.8.5 Interaction-free CGI examples
310
6
5.8.6 Client-server interaction
316
20
5.8.7 Apache and mod_perl
336
1
5.8.8 Server push and client pull
337
4
5.8.9 Simulating forms with the user agent
341
7
5.9 Telnet
348
1
5.10 Email
349
9
5.10.1 Attachments
350
2
5.10.2 POP3 client
352
4
5.11 Usenet news
358
19
5.11.1 The newsagent
361
6
5.11.2 Practice: freeing news. answers from periodical postings
367
4
5.11.3 Practice: checking newsgroups
371
6
Appendices
377
54
A Installing Perl
377
16
A.1 Basic installation
377
2
A.1.1 Where do I get it?
377
1
A.1.2 Installation under UNIX
378
1
A.1.3 Installation under Windows 95 and NT
378
1
A.2 Installing Perl/Tk
379
1
A.3 Installing additional modules
379
2
A.4 The CPAN
381
6
A.4.1 Perl distributions
382
1
A.4.2 Modules
383
1
A.4.3 Automatic updates
384
2
A.4.4 Configuration of the CPAN.pm module
386
1
A.4.5 Documentation
386
1
A.4.6 If the system administrator refuses...
387
1
A.5 Legal questions
387
1
A.6 Installing the SSL library for Libwww
388
1
A.7 Installation of a Web server
389
1
A.8 Installing the Apache CGI accelerator
390
3
B Starting scripts
393
6
B.1 UNIX
393
2
B.2 Windows 95 and NT
395
1
B.3 Important command line options
395
4
B.3.1 Line-by-line manipulation
395
2
B.3.2 Determining the version
397
1
B.3.3 Syntax check
397
1
B.3.4 Loading additional modules
398
1
B.3.5 Warning mode
398
1
C Troubleshooting
399
4
C.1 UNIX
399
1
C.2 Windows
400
1
C.3 External help
400
1
C.4 Error diagnostics for Perl/Tk applications
400
3
C.4.1 Setting up the display server
401
1
C.4.2 Conferring X server privileges
401
2
D HTML quick reference
403
6
D.1 Foreign language special characters
407
2
E Documentation
409
6
E.1 POD commands
410
2
E.2 Filters
412
3
E.2.1 Filter-specific POD commands
413
2
F Synchronization of parallel processes
415
10
F.1 Exclusive flock
415
4
F.2 Semaphores
419
6
G Addresses
425
4
G.1 The Perl 5 module list
425
1
G.2 Quick Reference cards
425
1
G.3 RFCs
426
1
G.4 Additional addresses
426
3
G.4.1 More information on Perl on the WWW
426
1
G.4.2 Newsgroups
427
2
H Contents of the CD-ROM
429
2
References
431
2
Index
433