in reply to Change the behavior of Perl's IRS

Can't you just discard the first line with your record separator, and the treat it as a normal separator?

<DATA>; # discard first line $/ = "myrecordsep\n"; while ( <DATA> ) { #s{$/}{}; # get rid of your separator if you want print; print "---\n"; } __DATA__ myrecordsep field1=item1 field2=item2 ... myrecordsep field1=item9 field2=item10 ...

Seems (to me) to do what you want.