in reply to question about getopt

If you are using a Perl version >= 5.10 you can also use the // operator (see perlop):

my $source_file = $options{o} // 'as.xcf-dist'; my $config_file = $options{c} // 'config.ini'; my $dest_file = $options{x} // usage();

citromatik