Just to add a bit to clarify and keep history, as Corion asked me in /msg: the $csv object is used for both input/getline/parse and output/print/combine. Most of the questions I get are for parsing, and most of my own scripts are parsing CSV data.
The parsing code works better when not setting eol, as it then allows more "default" values (to be mixed) and works faster (but probably not measurable).
Setting eol to $/ by default would most likely break a lot of parser scripts. Setting eol to $/ on output only makes some sense, but also makes the documentation harder and I wonder if it would be worth breaking backward compatibility.
What does make sense in breaking backward compatibility is to make binary default to a true value, as I can't think of a modern situation where it would break a parser.