This document provides an overview of aspect-oriented programming (AOP) in Perl using the Aspect.pm module. It defines key AOP terminology like join points, pointcuts, advice, and aspects. It describes the features of Aspect.pm like creating pointcuts with strings, regexes, or code references to select subroutines, and writing before, after, and around advice. Examples show creating reusable aspects for logging, profiling, and enforcing design patterns.