The package manager is there to provide consistency guarantees for the _system_, not just the software in the package. If you have multiple package management systems (eg dpkg + CPAN + python eggs, .. ) then you can't guarantee that the necessary dependencies are installed, that the language extensions match the version of the language installed, etc.
So you implement a set of rules, if you want them all to work together, and then you end up with a 'meta-package-manager' on top to enforce consistency. Think about how you would manage evolving packaging policies in such an environment.
Alternatively, you implement one package manager on the computer (eg. .deb or .rpm) and create converters to ensure that python eggs ship as debian-system-consistent .deb packages, etc. This is the most flexible approach: it means that only one place needs to change to make installed software match any changes in debian policy, etc; stops the python developers from being locked into deb-format and policy rules, etc. This is what is done today.