There could be very good reasons.
in reply to Re^3: Need to create a package from data from an excel file
in thread Need to create a package from data from an excel file
Take for example DBIx::Class::Schema::Loader. This module allows you to generate the necessary DBIx::Class class files either "in memory" or dump them to disk to be used later and thus saves you the effort and time of regenerating the classes, every time you run your DBIx::Class based application.
Other example: I have an application that writes a LaTeX file based upon info in certain spreadsheets. Then the application starts the LaTeX compiler and transforms the LaTeX file into a well formatted PDF-file. I could have kept the whole LaTeX file "in-memory" and send it to the LaTeX compiler's STDIN. However, once in a while I need to do some fine-tuning to the LaTeX file and therefore I need a disk-file to edit.
A program should be light and agile, its subroutines connected like a string of pearls. The spirit and intent of the program should be retained throughout. There should be neither too little or too much, neither needless loops nor useless variables, neither lack of structure nor overwhelming rigidity." - The Tao of Programming, 4.1 - Geoffrey James
My blog: Imperial Deltronics