On Tue, Jun 25, 2002 at 01:28:25PM +0200, Per Einar Ellefsen wrote: > At 12:26 25.06.2002, Ask Bjoern Hansen wrote: > > > >And... In all seriousness I don't see how the "three level names" > >will help much. The tricky and important part is to describe what > >the module does; not when it runs. > > > >I imagine that usually work done in the odd phases will be part of a > >module primarily doing something else. (Log handler opening logs; > >Apache::DBI opening database handles early, ...). > > Yes, but three-level names might help describe what the module does :-) > Don't take the propositions too religiously, I never said that the > 2nd-level name *had* to be a phase name.. I would much rather see logical > namespaces that just "seem right".
Yes, any religious conviction to a particular naming scheme will come unstuck at some point. Using a phase name for the 2nd-level name would be quite reasonable where the entire function of the module is *very* closely tied to the action of just that one phase. There's naturally a danger that once that convention is established then some modules will use a phase name for their 2nd-level name even though they don't fuly meet the critera described above (or maybe they did at version 1.x but don't at version 2.x). That's life. CPAN is littered with modules that could have been given better names with hindsight and so too, I'd guess, is Apache::*. Whatever set of conventions you can come up with they'll always be imperfect and imperfectly applied - but having them is still better than not. Tim.