http://www.perlmonks.org?node_id=60474


in reply to Storable

A trick that I've found useful in TK apps is the following:
use vars qw/$CONFIG $DATA/;

BEGIN {
  $CONFIG = "$0.conf";
  $DATA = retrieve($CONFIG) if -e $CONFIG;
}
END {
  store($DATA, $CONFIG);
}
$DATA is a reference to a hash that contains the user entered data. This little addition to the program means the data entered by the user in the last session becomes the default in this session... saves a heck of a lot of typing - particularly during testing!

Replies are listed 'Best First'.
Re: Re: Storable
by TheoPetersen (Priest) on Feb 23, 2001 at 19:10 UTC
    An excellent technique which will find its way to my code very soon :)

    My variation was to have a human-readable config file, but keep the actual data in a hash written out by Storable. At startup the program checked the dates of the two files and re-parsed the config file if needed. I hadn't thought of using it to maintain user state though, nice job.

      ...or do both in one shot with Data::Dumper. Doing this prevented me from having to define a human-readable configuration-file syntax. Though I do process the Data::Dumper output slightly.

              - tye (but my friends call me "Tye")