sub do_two { print "Doing two!\n"; return 2; } my $tl = TieLazy->new({one => 1, two => \&do_two}); print join("\t", @$tl{qw( one two two )} ), "\n"; $tl->{three} = 3; print "$$tl{three}\n"; $tl->{four} = sub { print "Four!\n"; return 4; }; print "Four exists!\n" if (exists($tl->{four})); print "$$tl{four}\n"; print "$$tl{four}\n";