Como faço para ler parágrafos de uma vez com o Perl?

Quando escrevo

#!/usr/bin/perl -w
use strict;

while( <DATA> ) {
    print "\n-------------------------\n\n";
    print;
    <>;
}

depois de cada "retorno" recebo uma linha.

Por que não recebo o próximo script depois de cada "retorno" de um parágrafo?

#!/usr/bin/perl -w
use strict;

local $/ = "";

while( <DATA> ) {
    print "\n-------------------------\n\n";
    print;
    <>;
}

__DATA__
line one
line two
line three
line four
line five

line six
line seven
line eigth
line nine

line ten
line eleven
line twelve

questionAnswers(3)

yourAnswerToTheQuestion