use strict; use warnings; use IO::File; my $stuff = 0.4312342134234234; my $morestuff = 0.2432134234342342; my $fh = IO::File->new('io_heredoc_prob.out', 'w') or die $!; printf $fh <<'__EOFOO__', $stuff, $morestuff; Some stuff: %.4f Some more stuff %.4f __EOFOO__ #### $ cat io_heredoc_prob.out Some stuff: 0.4312 Some more stuff 0.2432