in reply to Reading chunks of text
Yes, there is.
while (my @a = grep defined, map scalar <$fd>, 1 .. 6) { # do whatever you want with @a, which has 6 lines } [download]
I asked a similar question, two years ago.