my %small_hash; @small_hash{@interesting_keys} = @$config{@interesting_keys}; return \%small_hash; #### # $config is given sub get_file_watcher_ref { my %setting_for; my ( $watch_interval, $watch_file_min_size, $term_run_time, ); if ( $watch_interval = $config->{watch_interval} ) { $setting_for{watch_interval} = $watch_interval; } if ( $watch_file_min_size = $config->{watch_file_min_size} ) { $setting_for{watch_file_min_size} = $watch_file_min_size; } if ( $term_run_time = $config->{term_run_time} ) { $setting_for{term_run_time} = $term_run_time; } return \%setting_for; } #### sub get_file_watcher_ref { my %setting_for; my @interesting_keys = qw( watch_interval watch_file_min_size term_run_time ); for (@interesting_keys) { if ($config->{$_}) $setting_for{$_} = $config->{$_}; } return \%setting_for; }