use Data::Dumper; use Tk; my $mw = MainWindow->new()->bind('', [\&foo]); MainLoop(); sub foo { my $retval = eval '%h = (foo => q{bar}); \%h'; print Dumper $retval; }