WA1212 PERL Programming |
|
| 1. Overview of Perl |
|
- What is Perl?
- Running Perl Programs
- Sample Program
- Another Sample Program
- Yet Another Example
|
|
| 2. Perl Variables |
|
- Three Data Types
- Variable Names and Syntax
- Variable Naming
- Lists
- Scalar and List Contexts
- The Repetition Operator
|
|
| 3. Arrays and Hashes
|
|
- Arrays
- Array Functions
- The foreach Loop
- The @ARGV Array
- The grep Function
- Array Slices
- Hashes
- Hash Functions
- Scalar and List Contexts Revisited
|
|
| 4. Quoting and Interpolation |
|
- String Literals
- Interpolation
- Array Substitution and Join
- Backslashes and Single Quotes
- Quotation Operators
- Command Substitution
- Here Documents
|
|
| 5. Operators |
|
- Perl Operators
- Operators, Functions and Precedence
- File Test Operators
- Assignment Operator Notations
- The Range Operator
|
|
| 6. Flow Control |
|
- Simple Statements
- Simple Statement Modifiers
- Compound Statements
- The next, last, and redo Statements
- The for Loop
- The foreach Loop
|
|
| 7. I/O: Input Operations and File I/O |
|
- Overview of File I/O
- The open Function
- The Input Operator
- Default Input Operator
- The Print Function
- Reading Directories
|
|
| 8. Regular Expressions |
|
- Pattern Matching Overview
- The Substitution Operator
- Regular Expressions
- Special Characters
- Quantifiers (*, +, ?, {})
- Assertions (^, $, \b, \B)
|
|
| 9. Advanced Regular Expressions |
|
- Substrings
- Substrings in List Context
- RE Special Variables
- RE Options
- Multi-line REs
- Substituting with an Expression
- Perl RE Extensions
|
|
| 10. Subroutines |
|
- Overview of Subroutines
- Passing Arguments
- Private Variables
- Returning Values
|
|
| 11. References |
|
- References
- Creating References
- Using References
- Passing References as Arguments to Subroutines
- Anonymous Composers
- The Symbol Table
|
|
| 12. Complex Data Structures |
|
- Two-dimensional Arrays in Perl
- Anonymous Arrays and Anonymous Hashes
- Arrays of Arrays
- Arrays of References
- A Hash of Arrays
- A Hash of Hashes
- And So On...
|
|
| 13. Packages and Modules |
|
- Packages
- BEGIN and END Routines
- require vs. use
- Modules
- The bless Function
|
|
| 14. Introduction to Object-Oriented Programming in Perl |
|
- What is Object-Oriented?
- Why Use Object-Oriented Programming?
- Classes, Objects, and Methods in Perl
- Inheritance, the "is-a" Relationship
- Containment, the "has-a" Relationship
- Overloaded Operators
- Destructors
|
|
| 15. Binary Data Structures |
|
- Variable-Length (Delimited) Fields
- Variable vs. Fixed
- Handling Binary Data
- The pack Function
- The unpack Function
- The read Function
- C Data Structures
|
|
| 16. Multitasking with Perl |
|
- What are Single and Multitasking?
- UNIX Multitasking Concepts
- Process Creation with fork
- Program Loading with exec
- File Descriptor Inheritance
- How UNIX Opens Files
- One-Way Data Flow - Pipes
- Example
- Final Result - Page Viewing
|
|
| 17. Sockets Programming in Perl |
|
- Clients and Servers
- Ports and Services
- Berkeley Sockets
- Data Structures of the Sockets API
- Socket System Calls
- Generic Client/Server Models
- A Client/ServerExample
- A Little Web Server
|
|
| Appendix A - The Perl Distribution |
|
- Where Can You Get Perl?
- How Do You Build Perl?
- What Gets Created and Installed?
- Differences Between Platforms
|
|
| Appendix B - The Perl Debugger |
|
- Overview of the Perl Debugger
- Debugger Commands
- Non-Debugger Commands
- Listing Lines
- Single Stepping
- Setting and Clearing Breakpoints
- Modifying the Debugger
- The -w and -D Flags
|
|