Bloody hell.
I'm largely thinking aloud, and this is not a deep meditation: I'm just wondering if it was a design decision to not allow ->input_record_separator to be handle specific. It seems rather silly and unintuitive, I started using IO::File a lot so I could turn off buffering on some streams, but it sure seems to lack some consistency. I really wanted to and did create a uniform method ->get_fh('file') so I could have centralized error-catching and logging for a system that might process multiple files using poe or the like. If one process takes on multiple concurrent FH what is the plan of action? -- Read the whole file in and split it with a regexen? If you have to match at the end of the line how do you go about setting m/$/m to a custom regex? Or should I ignore $ and compile the regex for each possible line termination.