in reply to Configuration File

# read the AppConfig docs! use AppConfig qw/:expand :argcount/; my $config = AppConfig->new(); # note that variable names are case-insensitive by default $config->define( 'ROUTER'=> { ARGCOUNT => ARGCOUNT_HASH }, 'GROUP1' => { ARGCOUNT => ARGCOUNT_LIST }, 'GROUP2' => { ARGCOUNT => ARGCOUNT_LIST }, 'GROUP3' => { ARGCOUNT => ARGCOUNT_LIST }, ); $config->file('router.conf'); # now you can access the data # (untested, but this should give you the idea) printf ("Router %s is %s\n", $_, $config->ROUTER()->{$_}) foreach keys %{$config->ROUTER()}; printf ("Group %s is %s\n", $_, @{$config->get($_)}) foreach qw/group1 group2 group3/;