$ perl t.pl $ cat out.txt bob $ cat t.pl #!/usr/bin/perl use strict; use warnings; foo("bob"); sub foo { my $txt = shift; open my $FH, '>', 'out.txt' or die $!; bar($FH, $txt); } sub bar { my ($FH, $msg) = @_; baz($FH, $msg); } sub baz { my ($FH, $message) = @_; print $FH $message; }