Perl doesn't really care, and how Debian does it is based on their own special way of doing everything. It's really up to the person who configures and installs Perl. For instance, I keep all the stuff for all of my perls under their own directories since I have so many installed:
/usr/local/perls/perl-5.10.0/lib/perl5/darwin-2level
/usr/local/perls/perl-5.10.0/lib/perl5
/usr/local/perls/perl-5.10.0/lib/5.10.0/darwin-2level
/usr/local/perls/perl-5.10.0/lib/5.10.0
/usr/local/perls/perl-5.10.0/lib/site_perl/5.10.0/darwin-2level
/usr/local/perls/perl-5.10.0/lib/site_perl/5.10.0
.
The Perl build systems recognize potentially three sorts of install directories which you can read about in ExtUtils::MakeMaker or Module::Build:
- core - for the stuff that came with Perl
- site - the stuff the local user installs
- vendor - the stuff the OS vendor installs for you or through their package system
Mostly you don't have to worry about this if you are installing your own stuff with the CPAN tools since they will put stuff into the site directories for you. However, some Perl module distributions might mess with the build system settings to install into core or vendor directories.
Debian has their own policy which I think is a bit complicated, but it works for them.
ActiveState's system is really set up to be a mostly ActiveState-managed solution so that you'd install everything through PPM. They are mostly concerned about stable and tested enterprise installations where they handle most things for you. If you want to do everything yourself, you use Strawberry Perl which also has a simple module directory layout.
I don't use Apple's Perl for my own stuff, but they have a goofy set-up too:
/System/Library/Perl/5.8.8/darwin-thread-multi-2level
/System/Library/Perl/5.8.8
/Library/Perl/5.8.8/darwin-thread-multi-2level
/Library/Perl/5.8.8
/Library/Perl
/Network/Library/Perl/5.8.8/darwin-thread-multi-2level
/Network/Library/Perl/5.8.8
/Network/Library/Perl
/System/Library/Perl/Extras/5.8.8/darwin-thread-multi-2level
/System/Library/Perl/Extras/5.8.8
/Library/Perl/5.8.6
/Library/Perl/5.8.1