Skip to content

Instantly share code, notes, and snippets.

@laiso
Last active December 23, 2015 08:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save laiso/6607530 to your computer and use it in GitHub Desktop.
Save laiso/6607530 to your computer and use it in GitHub Desktop.
Chapter 1 An Overview of Perl
Getting Started
Natural and Artificial Languages
An Average Example
Filehandles
Operators
Control Structures
Regular Expressions
List Processing
What You Don't Know Won't Hurt You (Much)
The Gory Details
Chapter 2 Bits and Pieces
Atoms
Molecules
Built-in Data Types
Variables
Names
Scalar Values
Context
List Values and Arrays
Hashes
Typeglobs and Filehandles
Input Operators
Chapter 3 Unary and Binary Operators
Terms and List Operators (Leftward)
The Arrow Operator
Autoincrement and Autodecrement
Exponentiation
Ideographic Unary Operators
Binding Operators
Multiplicative Operators
Additive Operators
Shift Operators
Named Unary and File Test Operators
Relational Operators
Equality Operators
Bitwise Operators
C-Style Logical (Short-Circuit) Operators
Range Operator
Conditional Operator
Assignment Operators
Comma Operators
List Operators (Rightward)
Logical and, or, not, and xor
C Operators Missing from Perl
Chapter 4 Statements and Declarations
Simple Statements
Compound Statements
if and unless Statements
Loop Statements
Bare Blocks
goto
Global Declarations
Scoped Declarations
Pragmas
Chapter 5 Pattern Matching
The Regular Expression Bestiary
Pattern-Matching Operators
Metacharacters and Metasymbols
Character Classes
Quantifiers
Positions
Capturing and Clustering
Alternation
Staying in Control
Fancy Patterns
Chapter 6 Subroutines
Syntax
Semantics
Passing References
Prototypes
Subroutine Attributes
Chapter 7 Formats
Format Variables
Footers
Chapter 8 References
What Is a Reference?
Creating References
Using Hard References
Symbolic References
Braces, Brackets, and Quoting
Chapter 9 Data Structures
Arrays of Arrays
Hashes of Arrays
Arrays of Hashes
Hashes of Hashes
Hashes of Functions
More Elaborate Records
Saving Data Structures
Chapter 10 Packages
Symbol Tables
Autoloading
Chapter 11 Modules
Using Modules
Creating Modules
Overriding Built-in Functions
Chapter 12 Objects
Brief Refresher on Object-Oriented Lingo
Perl's Object System
Method Invocation
Object Construction
Class Inheritance
Instance Destructors
Managing Instance Data
Managing Class Data
Summary
Chapter 13 Overloading
The overload Pragma
Overload Handlers
Overloadable Operators
The Copy Constructor (=)
When an Overload Handler Is Missing (nomethod and fallback)
Overloading Constants
Public Overload Functions
Inheritance and Overloading
Run-Time Overloading
Overloading Diagnostics
Chapter 14 Tied Variables
Tying Scalars
Tying Arrays
Tying Hashes
Tying Filehandles
A Subtle Untying Trap
Tie Modules on CPAN
Perl as Technology
Chapter 15 Unicode
Building Character
Effects of Character Semantics
Caveats
Chapter 16 Interprocess Communication
Signals
Files
Pipes
System V IPC
Sockets
Chapter 17 Threads
The Process Model
The Thread Model
Chapter 18 Compiling
The Life Cycle of a Perl Program
Compiling Your Code
Executing Your Code
Compiler Backends
Code Generators
Code Development Tools
Avant-Garde Compiler, Retro Interpreter
Chapter 19 The Command-Line Interface
Command Processing
Environment Variables
Chapter 20 The Perl Debugger
Using the Debugger
Debugger Commands
Debugger Customization
Unattended Execution
Debugger Support
The Perl Profiler
Chapter 21 Internals and Externals
How Perl Works
Internal Data Types
Extending Perl (Using C from Perl)
Embedding Perl (Using Perl from C)
The Moral of the Story
Perl as Culture
Chapter 22 CPAN
The CPAN modules Directory
Using CPAN Modules
Creating CPAN Modules
Chapter 23 Security
Handling Insecure Data
Handling Timing Glitches
Handling Insecure Code
Chapter 24 Common Practices
Common Goofs for Novices
Efficiency
Programming with Style
Fluent Perl
Program Generation
Chapter 25 Portable Perl
Newlines
Endianness and Number Width
Files and Filesystems
System Interaction
Interprocess Communication (IPC)
External Subroutines (XS)
Standard Modules
Dates and Times
Internationalization
Style
Chapter 26 Plain Old Documentation
Pod in a Nutshell
Pod Translators and Modules
Writing Your Own Pod Tools
Pod Pitfalls
Documenting Your Perl Programs
Chapter 27 Perl Culture
History Made Practical
Perl Poetry
Reference Material
Chapter 28 Special Names
Special Names Grouped by Type
Special Variables in Alphabetical Order
Chapter 29 Functions
Perl Functions by Category
Perl Functions in Alphabetical Order
Chapter 30 The Standard Perl Library
Library Science
A Tour of the Perl Library
Chapter 31 Pragmatic Modules
use attributes
use autouse
use base
use blib
use bytes
use charnames
use constant
use diagnostics
use fields
use filetest
use integer
use less
use lib
use locale
use open
use overload
use re
use sigtrap
use strict
use subs
use vars
use warnings
Chapter 32 Standard Modules
Listings by Type
Benchmark
Carp
CGI
CGI::Carp
Class::Struct
Config
CPAN
Cwd
Data::Dumper
DB_File
Dumpvalue
English
Errno
Exporter
Fatal
Fcntl
File::Basename
File::Compare
File::Copy
File::Find
File::Glob
File::Spec
File::stat
File::Temp
FileHandle
Getopt::Long
Getopt::Std
IO::Socket
IPC::Open2
IPC::Open3
Math::BigInt
Math::Complex
Math::Trig
Net::hostent
POSIX
Safe
Socket
Symbol
Sys::Hostname
Sys::Syslog
Term::Cap
Text::Wrap
Time::Local
Time::localtime
User::grent
User::pwent
Chapter 33 Diagnostic Messages
Chapter 1 An Overview of Perl
Getting Started
Natural and Artificial Languages
An Average Example
Filehandles
Operators
Control Structures
Regular Expressions
List Processing
What You Don't Know Won't Hurt You (Much)
The Gory Details
Chapter 2 Bits and Pieces
Atoms
Molecules
Built-in Data Types
Variables
Names
Scalar Values
Context
List Values and Arrays
Hashes
Typeglobs and Filehandles
Input Operators
Chapter 3 Unary and Binary Operators
Terms and List Operators (Leftward)
The Arrow Operator
Autoincrement and Autodecrement
Exponentiation
Ideographic Unary Operators
Binding Operators
Multiplicative Operators
Additive Operators
Shift Operators
Named Unary and File Test Operators
Relational Operators
Equality Operators
Smartmatch Operator
Bitwise Operators
C-Style Logical (Short-Circuit) Operators
Range Operators
Conditional Operator
Assignment Operators
Comma Operators
List Operators (Rightward)
Logical and, or, not, and xor
C Operators Missing from Perl
Chapter 4 Statements and Declarations
Simple Statements
Compound Statements
if and unless Statements
The given Statement
Loop Statements
The goto Operator
Paleolithic Perl Case Structures
The Ellipsis Statement
Global Declarations
Scoped Declarations
Pragmas
Chapter 5 Pattern Matching
The Regular Expression Bestiary
Pattern-Matching Operators
Metacharacters and Metasymbols
Character Classes
Quantifiers
Positions
Grouping and Capturing
Alternation
Staying in Control
Fancy Patterns
Chapter 6 Unicode
Show, Don’t Tell
Getting at Unicode Data
A Case of Mistaken Identity
Graphemes and Normalization
Comparing and Sorting Unicode Text
More Goodies
References
Chapter 7 Subroutines
Syntax
Semantics
Passing References
Prototypes
Subroutine Attributes
Chapter 8 References
What Is a Reference?
Creating References
Using Hard References
Symbolic References
Braces, Brackets, and Quoting
Chapter 9 Data Structures
Arrays of Arrays
Hashes of Arrays
Arrays of Hashes
Hashes of Hashes
Hashes of Functions
More Elaborate Records
Saving Data Structures
Chapter 10 Packages
Symbol Tables
Qualified Names
The Default Package
Changing the Package
Autoloading
Chapter 11 Modules
Loading Modules
Unloading Modules
Creating Modules
Overriding Built-in Functions
Chapter 12 Objects
Brief Refresher on Object-Oriented Lingo
Perl’s Object System
Method Invocation
Object Construction
Class Inheritance
Instance Destructors
Managing Instance Data
Managing Class Data
The Moose in the Room
Summary
Chapter 13 Overloading
The overload Pragma
Overload Handlers
Overloadable Operators
The Copy Constructor (=)
When an Overload Handler Is Missing (nomethod and fallback)
Overloading Constants
Public Overload Functions
Inheritance and Overloading
Runtime Overloading
Overloading Diagnostics
Chapter 14 Tied Variables
Tying Scalars
Tying Arrays
Tying Hashes
Tying Filehandles
A Subtle Untying Trap
Tie Modules on CPAN
Perl as Technology
Chapter 15 Interprocess Communication
Signals
Files
Pipes
System V IPC
Sockets
Chapter 16 Compiling
The Life Cycle of a Perl Program
Compiling Your Code
Executing Your Code
Compiler Backends
Code Generators
Code Development Tools
Avant-Garde Compiler, Retro Interpreter
Chapter 17 The Command-Line Interface
Command Processing
Environment Variables
Chapter 18 The Perl Debugger
Using the Debugger
Debugger Commands
Debugger Customization
Unattended Execution
Debugger Support
Profiling Perl
Chapter 19 CPAN
History
A Tour of the Repository
The CPAN Ecosystem
Installing CPAN Modules
Creating CPAN Distributions
Perl as Culture
Chapter 20 Security
Handling Insecure Data
Handling Timing Glitches
Handling Insecure Code
Chapter 21 Common Practices
Common Goofs for Novices
Efficiency
Programming with Style
Fluent Perl
Program Generation
Chapter 22 Portable Perl
Newlines
Endianness and Number Width
Files and Filesystems
System Interaction
Interprocess Communication (IPC)
External Subroutines (XS)
Standard Modules
Dates and Times
Internationalization
Style
Chapter 23 Plain Old Documentation
Pod in a Nutshell
Pod Translators and Modules
Writing Your Own Pod Tools
Pod Pitfalls
Documenting Your Perl Programs
Chapter 24 Perl Culture
History Made Practical
Perl Poetry
Virtues of the Perl Programmer
Events
Getting Help
Reference Material
Chapter 25 Special Names
Special Names Grouped by Type
Special Variables in Alphabetical Order
Chapter 26 Formats
String Formats
Binary Formats
Picture Formats
Chapter 27 Functions
Perl Functions by Category
Perl Functions in Alphabetical Order
Chapter 28 The Standard Perl Library
Library Science
A Tour of the Perl Library
Chapter 29 Pragmatic Modules
attributes
autodie
autouse
base
bigint
bignum
bigrat
blib
bytes
charnames
constant
deprecate
diagnostics
encoding
feature
fields
filetest
if
inc::latest
integer
less
lib
locale
mro
open
ops
overload
overloading
parent
re
sigtrap
sort
strict
subs
threads
utf8
vars
version
vmsish
warnings
User-Defined Pragmas
Chapter 1 An Overview of Perl
Getting Started
Natural and Artificial Languages
An Average Example
Filehandles
Operators
Control Structures
Regular Expressions
List Processing
What You Don't Know Won't Hurt You (Much)
The Gory Details
Chapter 2 Bits and Pieces
Atoms
Molecules
Built-in Data Types
Variables
Names
Scalar Values
Context
List Values and Arrays
Hashes
Typeglobs and Filehandles
Input Operators
Chapter 3 Unary and Binary Operators
Terms and List Operators (Leftward)
The Arrow Operator
Autoincrement and Autodecrement
Exponentiation
Ideographic Unary Operators
Binding Operators
Multiplicative Operators
Additive Operators
Shift Operators
Named Unary and File Test Operators
Relational Operators
Equality Operators
Smartmatch Operator
Bitwise Operators
C-Style Logical (Short-Circuit) Operators
Range Operators
Conditional Operator
Assignment Operators
Comma Operators
List Operators (Rightward)
Logical and, or, not, and xor
C Operators Missing from Perl
Chapter 4 Statements and Declarations
Simple Statements
Compound Statements
if and unless Statements
The given Statement
Loop Statements
The goto Operator
Paleolithic Perl Case Structures
The Ellipsis Statement
Global Declarations
Scoped Declarations
Pragmas
Chapter 5 Pattern Matching
The Regular Expression Bestiary
Pattern-Matching Operators
Metacharacters and Metasymbols
Character Classes
Quantifiers
Positions
Grouping and Capturing
Alternation
Staying in Control
Fancy Patterns
Chapter 6 Unicode
Show, Don’t Tell
Getting at Unicode Data
A Case of Mistaken Identity
Graphemes and Normalization
Comparing and Sorting Unicode Text
More Goodies
References
Chapter 7 Subroutines
Syntax
Semantics
Passing References
Prototypes
Subroutine Attributes
Chapter 8 References
What Is a Reference?
Creating References
Using Hard References
Symbolic References
Braces, Brackets, and Quoting
Chapter 9 Data Structures
Arrays of Arrays
Hashes of Arrays
Arrays of Hashes
Hashes of Hashes
Hashes of Functions
More Elaborate Records
Saving Data Structures
Chapter 10 Packages
Symbol Tables
Qualified Names
The Default Package
Changing the Package
Autoloading
Chapter 11 Modules
Loading Modules
Unloading Modules
Creating Modules
Overriding Built-in Functions
Chapter 12 Objects
Brief Refresher on Object-Oriented Lingo
Perl’s Object System
Method Invocation
Object Construction
Class Inheritance
Instance Destructors
Managing Instance Data
Managing Class Data
The Moose in the Room
Summary
Chapter 13 Overloading
The overload Pragma
Overload Handlers
Overloadable Operators
The Copy Constructor (=)
When an Overload Handler Is Missing (nomethod and fallback)
Overloading Constants
Public Overload Functions
Inheritance and Overloading
Runtime Overloading
Overloading Diagnostics
Chapter 14 Tied Variables
Tying Scalars
Tying Arrays
Tying Hashes
Tying Filehandles
A Subtle Untying Trap
Tie Modules on CPAN
Perl as Technology
Chapter 15 Interprocess Communication
Signals
Files
Pipes
System V IPC
Sockets
Chapter 16 Compiling
The Life Cycle of a Perl Program
Compiling Your Code
Executing Your Code
Compiler Backends
Code Generators
Code Development Tools
Avant-Garde Compiler, Retro Interpreter
Chapter 17 The Command-Line Interface
Command Processing
Environment Variables
Chapter 18 The Perl Debugger
Using the Debugger
Debugger Commands
Debugger Customization
Unattended Execution
Debugger Support
Profiling Perl
Chapter 19 CPAN
History
A Tour of the Repository
The CPAN Ecosystem
Installing CPAN Modules
Creating CPAN Distributions
Perl as Culture
Chapter 20 Security
Handling Insecure Data
Handling Timing Glitches
Handling Insecure Code
Chapter 21 Common Practices
Common Goofs for Novices
Efficiency
Programming with Style
Fluent Perl
Program Generation
Chapter 22 Portable Perl
Newlines
Endianness and Number Width
Files and Filesystems
System Interaction
Interprocess Communication (IPC)
External Subroutines (XS)
Standard Modules
Dates and Times
Internationalization
Style
Chapter 23 Plain Old Documentation
Pod in a Nutshell
Pod Translators and Modules
Writing Your Own Pod Tools
Pod Pitfalls
Documenting Your Perl Programs
Chapter 24 Perl Culture
History Made Practical
Perl Poetry
Virtues of the Perl Programmer
Events
Getting Help
Reference Material
Chapter 25 Special Names
Special Names Grouped by Type
Special Variables in Alphabetical Order
Chapter 26 Formats
String Formats
Binary Formats
Picture Formats
Chapter 27 Functions
Perl Functions by Category
Perl Functions in Alphabetical Order
Chapter 28 The Standard Perl Library
Library Science
A Tour of the Perl Library
Chapter 29 Pragmatic Modules
attributes
autodie
autouse
base
bigint
bignum
bigrat
blib
bytes
charnames
constant
deprecate
diagnostics
encoding
feature
fields
filetest
if
inc::latest
integer
less
lib
locale
mro
open
ops
overload
overloading
parent
re
sigtrap
sort
strict
subs
threads
utf8
vars
version
vmsish
warnings
User-Defined Pragmas
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment