I agree with the other posters, especially pragma
's point. The only thing I'd add is a more general point about the top level hierarchies. Net::* or DBD::* or Foo::* are categories of modules and it's in everyone's interest to keep that level of naming clean and meaningful. That said, I myself violated this rule when I created the AnyData::* hierarchy. At the time I asked Tim Bunce and the modules list about it and no one objected. It makes some sense because there are lots of modules within the hierarchy. Still, I somewhat regret my decision for the reasons mentioned above.