Sinisterly
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

[Image: 69f726902564cf47fa5ce039ed01db59.png]

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