sub gimme_a_widget { my $event = shift; for my $handler (@event_handlers) { $handler->handle($event); } } #### my @event_handlers; BEGIN { my $dir = '/my/event/handlers'; use lib $dir; for () { s#.*/##; s#\.pm$//; eval "use Handler::$_;" or die $@; push @event_handlers,"Handler::$_"; } } #### push @event_handlers,"Handler::$_"->new();