my $foo; { my $bar = 'bar'; $foo = sub { return ($bar .= join $bar, @_) } } use Data::Dumper; print Dumper(\$foo);