perlmodstyle - Perl module style guide
This document attempts to describe the Perl Community's "best practice" for
writing Perl modules. It extends the recommendations found in perlstyle , which should be
considered required reading before reading this document.
While this document is intended to be useful to all module authors, it is particularly
aimed at authors who wish to publish their modules on CPAN.
The focus is on elements of style which are visible to the users of a module, rather than
those parts which are only seen by the module's developers. However, many of the guidelines
presented in this document can be extrapolated and applied successfully to a module's
This document differs from perlnewmod
in that it is a style guide rather than a tutorial on creating CPAN modules. It provides a
checklist against which modules can be compared to determine whether they conform to best
practice, without necessarily describing in detail how to achieve this.
All the advice contained in this document has been gleaned from extensive conversations
with experienced CPAN authors and users. Every piece of advice given here is the result of
previous mistakes. This information is here to help you avoid the same mistakes and the extra
work that would inevitably be required to fix them.
The first section of this document provides an itemized checklist; subsequent sections
provide a more detailed discussion of the items on the list. The final section, "Common
Pitfalls", describes some of the most popular mistakes made by CPAN authors.
- General Perl style guide
- How to create a new module
- POD documentation
- Verifies your POD's correctness
- Testing tools
- Test::Simple, Test::Inline, Carp::Assert
- Perl Authors Upload Server. Contains links to information for module authors.
- Any good book on software engineering
Kirrily "Skud" Robert <firstname.lastname@example.org>