Session 1: INTRODUCTION AND BASIC SYNTAX
- What is PERL and why PERL is useful
- How to run PERL programs on UNIX and Windows platform
- A simple PERL Program
Session 2: OPERATORS AND CONTROL FLOW
- Scalar variables - usage
- Basic arithmetic operators & how they work with scalar operands
- What an expression is
- How to use the if statement and the == operator
- Two-way and multi-way branching using else and elsif
- Simple loops using while and until statements
Session 3: SCALAR CONTEXT AND SCALAR VALUES
- Scalar values and scalar context
- Integer and floating point representation
- Octal and Hexadecimal notations
- Character strings, single and double quote representation
- Escape sequences
- Interchangeability of character and numeric values
Session 4: MORE OPERATORS
- More arithmetic operators, **, % and - (unary)
- Integer and string comparison operators
- Logical operators
- Bit manipulation operators
- Compound assignment operators
- Autoincrement and autodecrement operators
- Concatenation and repetition operators
- Conditional and comma operators
Session 5: LIST CONTEXT & ARRAY VARIABLES
- What lists are
- Relationship between scalars and lists
- Storing lists in array variables
- Accessing elements of arrays and lists
- Range operator
- Array assignment in scalar and list context
- Library functions used with lists
Session 6: PATTERN MATCHING
- How pattern matching works
- Pattern matching operators
- Pattern matching special characters
- Labs part I
- Pattern matching options
- Pattern substitution
- Pattern tagging
- Translation
Session 7: SUBROUTINES
- What is a subroutine
- How to define and invoke subroutines
- Argument passing and return values from a subroutine
- Typeglob for argument passing
- Local and global variables in subroutines
- How to nest subroutines
- How to use recursive subroutines
- Special system subroutines - AUTOLOAD, BEGIN and END
Session 8: ASSOCIATIVE ARRAYS
- What an associative array is
- How to define and use associative arrays
- Initialising and extending hashes
- Assigning and copying hashes
- How to delete elements of an associative array
- How to loop using associative arrays
- Library function used with associative arrays
- How to build advanced data structures using associative arrays
Session 9: MULTI THREADING
- What is Multithreading
- How to check the perl interpreter for multi thread capability
- Create a simple Multi Thread program
- More complex example of multi threading
- Problems with multi thread programs
Session 10: MISCELLANEOUS SYSTEM & DATA MANIPULATING FUNCTIONS
- Handling Errors - die, warn, eval
- Handling exceptions - throw, catch
- Handling signals - %SIG hash, kill, alarm, sleep
- Directory manipulation functions
- File attribute functions
Session 11: ARRAYS & HASHES
- Multi-dimensional arrays
- Hashes containing arrays
- Hashes of hashes
Session 12: MODULES & PACKAGES
- Namespaces
- Scope resolution operator
- Package declaration
- Use and require
- Data hiding and exporting
- Finding libraries and modules - @INC and %INC
- Setting the search path