1. 
Copyright 
2. 
Introduction 
2.1. 
How to run the examples included in this eBook 
2.1.1. 
How to run the script in Windows 
2.1.2. 
How to run the script in Linux 


3. 
Functions for real @ARRAYs 


3.1. 
The pop function 
3.1.1. 
The syntax forms 
3.1.2. 
How to use pop with a stack array 
3.1.3. 
How to use pop with a queue array 
3.1.4. 
How to emulate a circular list with pop 
3.1.5. 
How to print an array using pop within a while loop 
3.1.6. 
Which is the difference between pop, chop and chomp 
3.1.7. 
How to use pop with array references 
3.1.8. 
How to use pop with a list 
3.1.9. 
How to use pop with split 
3.1.10. 
How to reverse an array using pop and push 
3.1.11. 
How to use pop with an AoA (array of arrays) 
3.1.11.1. 
How to delete the last column from a matrix 
3.1.11.2. 
How to delete the last row from a matrix 
3.1.12. 
How to use pop with an AoH (array of hashes) 
3.1.13. 
How to use pop with an HoA (hash of arrays) 
3.1.14. 
How to use pop with @_, @ARGV,  


3.2. 
The push function 
3.2.1. 
The syntax form 
3.2.2. 
How to use push to append a list to an array 
3.2.3. 
How to use push to append an array to an array 
3.2.4. 
How to concatenate two arrays by alternating their elements 
3.2.5. 
Using push, chomp and while to create an array from a file 
3.2.6. 
How to use push with a stack array 
3.2.7. 
How to use push with a queue array 
3.2.8. 
How to use push to implement a simple circular list 
3.2.9. 
How to use push with array references 
3.2.10. 
How to use push with an AoA (array of arrays) 
3.2.10.1. 
How to read a matrix from a file 
3.2.10.2. 
How to append a column to a matrix 
3.2.10.3. 
How to append a row to a matrix 
3.2.10.4. 
How to read a text from a file and push into columns 
3.2.11. 
How to use push with an AoH (array of hashes) 
3.2.12. 
How to use push with an HoA (hash of arrays) 
3.2.13. 
How to use push with $_, @{ }, =>, [ ],  


3.3. 
The shift function 
3.3.1. 
The syntax forms 
3.3.2. 
How to use shift with a stack array 
3.3.3. 
How to use shift with a queue array 
3.3.4. 
How to emulate a circular list with shift 
3.3.5. 
How to use shift within the body of a subroutine 
3.3.6. 
How to use shift with an AoA (array of arrays) 
3.3.6.1. 
How to delete the first column from a matrix 
3.3.6.2. 
How to delete the first row from a matrix 
3.3.7. 
How to use shift with an AoH (array of hashes) 
3.3.8. 
How to use shift with an HoA (hash of arrays) 
3.3.9. 
How to use shift with @_, @ARGV, @$_, %{}, , && 


3.4. 
The splice function 
3.4.1. 
The syntax forms 
3.4.1.1. 
The general syntax form 
3.4.1.2. 
The second syntax form 
3.4.1.3. 
The third syntax form 
3.4.1.4. 
The fourth syntax form 
3.4.2. 
splice versus shift 
3.4.3. 
splice versus pop 
3.4.4. 
splice versus unshift 
3.4.5. 
splice versus push 
3.4.6. 
How to use splice with an AoA (array of arrays) 
3.4.7. 
How to use splice with an AoH (array of hashes) 
3.4.8. 
How to use splice with an HoA (hash of arrays) 
3.4.9. 
How to use splice with @_ 


3.5. 
The unshift function 
3.5.1. 
The syntax form 
3.5.2. 
How to use unshift to insert a list in front of an array 
3.5.3. 
Using unshift to insert an array in front of another array 
3.5.4. 
How to use unshift with array references 
3.5.5. 
How to use unshift with a stack array 
3.5.6. 
How to use unshift with a queue array 
3.5.7. 
How to emulate a circular list with unshift 
3.5.8. 
How to use unshift with an AoA (array of arrays) 
3.5.8.1. 
How to use unshift to insert a column to a matrix 
3.5.8.2. 
How to use unshift to insert a row to a matrix 
3.5.9. 
How to use unshift with an AoH (array of hashes) 
3.5.10. 
How to use unshift with an HoA (hash of arrays) 
3.5.11 
How to use unshift with @$_ 