![]() |
|
Book Advanced Perl Programming - Printable Version +- Sinisterly (https://sinister.ly) +-- Forum: Sharing (https://sinister.ly/Forum-Sharing) +--- Forum: eBooks (https://sinister.ly/Forum-eBooks) +--- Thread: Book Advanced Perl Programming (/Thread-Book-Advanced-Perl-Programming) |
Book Advanced Perl Programming - ZanGetsu - 09-12-2017 ![]() Code: Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
1. Advanced Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Introspection 2
Messing with the Class Model 20
Unexpected Code 25
Conclusion 42
2. Parsing Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Parse::RecDescent Grammars 44
Parse::Yapp 68
Other Parsing Techniques 73
Conclusion 78
3. Templating Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Formats and Text::Autoformat 80
Text::Template 84
HTML::Template 90
HTML::Mason 96
Template Toolkit 107
AxKit 114
Conclusion 116
4. Objects, Databases, and Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
Beyond Flat Files 118
Object Serialization 119
Object Databases 129
vi | Table of Contents
Database Abstraction 134
Practical Uses in Web Applications 142
Conclusion 148
5. Natural Language Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
Perl and Natural Languages 149
Handling English Text 150
Modules for Parsing English 154
Categorization and Extraction 159
Conclusion 171
6. Perl and Unicode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
Terminology 172
What Is Unicode? 174
Unicode Transformation Formats 176
Handling UTF-8 Data 179
Encode 184
Unicode for XS Authors 190
Conclusion 193
7. POE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
Programming in an Event-Driven Environment 195
Top-Level Pieces: Components 207
Conclusion 213
8. Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
Test::Simple 215
Test::More 217
Test::Harness 220
Test::Builder 222
Test::Builder::Tester 224
Keeping Tests and Code Together 225
Unit Tests 226
Conclusion 232
9. Inline Extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
Simple Inline::C 233
More Complex Tasks with Inline::C 237
Inline:: Everything Else 250
Conclusion 255
Table of Contents | vii
10. Fun with Perl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
Obfuscation 256
Just Another Perl Hacker 261
Perl Golf 263
Perl Poetry 264
Acme::* 266
Conclusion 270 |