Eric Wilhelm writes: > use My::Really::Long::Module::Name; > my $obj = My::Really::Long::Module::Name->new(); > > ... is just _almost_ tedious enough to warrant copy/paste, but not > quite.
A decent editor should provide some sort of completion facility on previously typed terms, so that you don't have to retype them. For example in Vim having first typed: use My::Really::Long::Module::Name; you can then type: my $obj = M Pressing Ctrl+P ("P" for "previous"; you can guess what the keystroke for "next" is) completes this, incorrectly, to: my $obj = Module But simply keep Ctrl pressed and tap P a second time and you get: my $obj = My And from there press Ctrl+X Ctrl+P to type the word following the one you've just completed, giving: my $obj = My::Really Do that a few more times and you've got the whole name: my $obj = My::Really::Long::Module::Name That sounds tedious when written down like this, but basically it just involves holding down Ctrl and pressing P and X a few times. I believe that Emacs has an equivalent feature, and I'm sure I've seen some kind of tooltip completion feature on a gui Windows editor. Picking a decent editor and learning how to use it well is far better than trying to use unnaturally short identifiers throughout your code! > That said, I would much rather see all file-format parsing/writing > modules go under FileFormat:: than Parse::. But why group them under either? Why group them at all? > IMO, a distribution shouldn't have to break out of a single root. > Starting with Parse, Info, ... means you're stuck (maybe just stuck > looking silly, but still stuck.) That's along the same lines of why I'd prefer CAD::, Graphics::, Video::, and whatever -- cos those are the sorts of modules that work together (even if only some of them are to do with file-types), rather than all the modules dealing with file-types. Smylers -- May God bless us with enough foolishness to believe that we can make a difference in this world, so that we can do what others claim cannot be done.