| | Copyright |
| | Foreword |
| | Preface |
| | | About This Book |
| | | What You Need to Know to Use This Book |
| | | Organization of This Book |
| | | Conventions Used in This Book |
| | | Comments and Questions |
| | | Acknowledgments |
| | Part I: Object-Oriented Programming in Perl |
| | | Chapter 1. Modular Programming with Perl |
| | | Section 1.1. What Is a Module? |
| | | Section 1.2. Why Perl Modules? |
| | | Section 1.3. Namespaces |
| | | Section 1.4. Packages |
| | | Section 1.5. Defining Modules |
| | | Section 1.6. Storing Modules |
| | | Section 1.7. Writing Your First Perl Module |
| | | Section 1.8. Using Modules |
| | | Section 1.9. CPAN Modules |
| | | Section 1.10. Exercises |
| | | Chapter 2. Data Structures and String Algorithms |
| | | Section 2.1. Basic Perl Data Types |
| | | Section 2.2. References |
| | | Section 2.3. Matrices |
| | | Section 2.4. Complex Data Structures |
| | | Section 2.5. Printing Complex Data Structures |
| | | Section 2.6. Data Structures in Action |
| | | Section 2.7. Dynamic Programming |
| | | Section 2.8. Approximate String Matching |
| | | Section 2.9. Resources |
| | | Section 2.10. Exercises |
| | | Chapter 3. Object-Oriented Programming in Perl |
| | | Section 3.1. What Is Object-Oriented Programming? |
| | | Section 3.2. Using Perl Classes (Without Writing Them) |
| | | Section 3.3. Objects, Methods, and Classes in Perl |
| | | Section 3.4. Arrow Notation (->) |
| | | Section 3.5. Gene1: An Example of a Perl Class |
| | | Section 3.6. Details of the Gene1 Class |
| | | Section 3.7. Gene2.pm: A Second Example of a Perl Class |
| | | Section 3.8. Gene3.pm: A Third Example of a Perl Class |
| | | Section 3.9. How AUTOLOAD Works |
| | | Section 3.10. Cleaning Up Unused Objects with DESTROY |
| | | Section 3.11. Gene.pm: A Fourth Example of a Perl Class |
| | | Section 3.12. How to Document a Perl Class with POD |
| | | Section 3.13. Additional Topics |
| | | Section 3.14. Resources |
| | | Section 3.15. Exercises |
| | | Chapter 4. Sequence Formats and Inheritance |
| | | Section 4.1. Inheritance |
| | | Section 4.2. FileIO.pm: A Class to Read and Write Files |
| | | Section 4.3. SeqFileIO.pm: Sequence File Formats |
| | | Section 4.4. Resources |
| | | Section 4.5. Exercises |
| | | Chapter 5. A Class for Restriction Enzymes |
| | | Section 5.1. Envisioning an Object |
| | | Section 5.2. Rebase.pm: A Class Module |
| | | Section 5.3. Restriction.pm: Finding Recognition Sites |
| | | Section 5.4. Drawing Restriction Maps |
| | | Section 5.5. Resources |
| | | Section 5.6. Exercises |
| | Part II: Perl and Bioinformatics |
| | | Chapter 6. Perl and Relational Databases |
| | | Section 6.1. One Perl, Many Databases |
| | | Section 6.2. Popular Relational Databases |
| | | Section 6.3. Relational Database Definitions |
| | | Section 6.4. Structured Query Language |
| | | Section 6.5. Administering Your Database |
| | | Section 6.6. Relational Database Design |
| | | Section 6.7. Perl DBI and DBD Interface Modules |
| | | Section 6.8. A Rebase Database Implementation |
| | | Section 6.9. Additional Topics |
| | | Section 6.10. Resources |
| | | Section 6.11. Exercises |
| | | Chapter 7. Perl and the Web |
| | | Section 7.1. How the Web Works |
| | | Section 7.2. Web Servers and Browsers |
| | | Section 7.3. The Common Gateway Interface |
| | | Section 7.4. Rebase: Building Dynamic Web Pages |
| | | Section 7.5. Exercises |
| | | Chapter 8. Perl and Graphics |
| | | Section 8.1. Computer Graphics |
| | | Section 8.2. GD |
| | | Section 8.3. Adding GD Graphics to Restrictionmap.pm |
| | | Section 8.4. Making Graphs |
| | | Section 8.5. Resources |
| | | Section 8.6. Exercises |
| | | Chapter 9. Introduction to Bioperl |
| | | Section 9.1. The Growth of Bioperl |
| | | Section 9.2. Installing Bioperl |
| | | Section 9.3. Testing Bioperl |
| | | Section 9.4. Bioperl Problems |
| | | Section 9.5. Overview of Objects |
| | | Section 9.6. bptutorial.pl |
| | | Section 9.7. bptutorial.pl: sequence_manipulation Demo |
| | | Section 9.8. Using Bioperl Modules |
| | Part III: Appendixes |
| | | Appendix A. Perl Summary |
| | | Section A.1. Command Interpretation |
| | | Section A.2. Comments |
| | | Section A.3. Scalar Values and Scalar Variables |
| | | Section A.4. Assignment |
| | | Section A.5. Statements and Blocks |
| | | Section A.6. Arrays |
| | | Section A.7. Hashes |
| | | Section A.8. Complex Data Structures |
| | | Section A.9. Operators |
| | | Section A.10. Operator Precedence |
| | | Section A.11. Basic Operators |
| | | Section A.12. Conditionals and Logical Operators |
| | | Section A.13. Binding Operators |
| | | Section A.14. Loops |
| | | Section A.15. Input/Output |
| | | Section A.16. Regular Expressions |
| | | Section A.17. Scalar and List Context |
| | | Section A.18. Subroutines |
| | | Section A.19. Modules and Packages |
| | | Section A.20. Object-Oriented Programming |
| | | Section A.21. Built-in Functions |
| | | Appendix B. Installing Perl |
| | | Section B.1. Installing Perl on Your Computer |
| | | Section B.2. Versions of Perl |
| | | Section B.3. Internet Access |
| | | Section B.4. Downloading |
| | | Section B.5. How to Run Perl Programs |
| | | Section B.6. Finding Help |
| | Colophon |
| | Index |