in reply to Split up a perl script

Modules don't have to be of general (read generic) use only. The purpose of modular design, is to make difficult things easier. That can mean code reuse, or any of a number of other reasons for modularizing your code.

If your difficulty is too big of a program file (more than a few hundered lines, give or take), it may be time to factor some of the code out into modules. One of the beauties of this approach is that once you have the details of a module hammered out, you can consider it "done", and move on to working on other sections of code. At that point, so long as you stick with the module's interface, you usually don't need to worry that a change somewhere else in your script might ripple a problem into the other module.

Modularity isn't just about code reuse. It's also about namespace segregation, divide and conquer coding, and keeping code chunks bite-sized for easy digestion. (and object orientation, and, and, and....)


Dave