#!/usr/bin/perl -w use strict; $|++; my $fruit = [ qw|apple orange pear| ]; my $dispatch = { add => sub { return add_entry( $fruit ) }, }; print scalar localtime, "\n"; sleep 1; print &{ $dispatch->{add} }, " <-- from sub \n";; sleep 1; print scalar localtime, "\n"; sub add_entry{ print scalar localtime, " <-- in sub \n"; sleep 1; return scalar localtime; } __END__ produces: Sat Apr 27 19:00:21 2002 Sat Apr 27 19:00:22 2002 <-- in sub Sat Apr 27 19:00:23 2002 <-- from sub Sat Apr 27 19:00:24 2002