in reply to When is an ^$ not a ^$ ?

You can further simplify by reading the description of $/ in perlvar.. Therein you'll discover the magic of setting it to "", which allows 1 or more blank lines to delimit paragraphs, allowing you to write:
open(FILE,"<$input_file") or die "$input_file: $!\n"; { local $/ = ""; @data = <FILE> } close(FILE);