Perl 4 used ' as a package name separator when importing packages. Perl 5 provides the same feature but uses :: to separate package names. Use colons rather than single quotation marks to separate packages.
This noncompliant code example uses the Perl 4 ' syntax to import an external package. This code does successfully require the package, but because Perl 5 is over 15 years old, the Perl 4 syntax has largely been forgotten. Consequently, the code can be seen as confusing or arcane.
require DBI'SQL'Nano; |
This compliant solution uses Perl 5's :: syntax to import an external package:
require DBI::SQL::Nano; |
Recommendation | Severity | Likelihood | Remediation Cost | Priority | Level |
|---|---|---|---|---|---|
DCL05-PL | Low | Improbable | Low | P6 | L2 |
Tool | Diagnostic |
|---|---|
Perl::Critic | Variables::ProhibitPerl4PackageNames |
| [CPAN] | Elliot Shank, Perl-Critic-1.116 Variables::ProhibitPerl4PackageNames |