Perl stands, among other things, for "practical extraction and report language." It's time to learn about that "...report language" business.
Perl provides the notion of a simple report writing template, called a format . A format defines a constant part (the column headers, labels, fixed text, or whatever) and a variable part (the current data you're reporting). The shape of the format is very close to the shape of the output, similar to formatted output in COBOL or the print using clauses of some BASICs.
Using a format consists of doing three things:
Defining a format
Loading up the data to be printed into the variable portions of the format (fields)
Invoking the format
Most often, the first step is done once (in the program text so that it gets defined at compile-time), and the other two steps are performed repeatedly.
 You can also create formats at run-time using the eval function, as described in Programming Perl and in the perlform (1) manpage.