[Top] [All Lists]

Re: line terminator

1997-05-23 16:50:49
On Tue, 20 May 1997, Tim Showalter wrote:
You have your choice of two reasonable choices:

LF|CRLF|CR: This works with any OS that purports to save files in ASCII

CRLF: This is what a standard does normally.

I find LF|CRLF|CR completely unacceptable.

A format needs to have a *single canonical* form.  I don't care if you map
that canonical form to your local system newline conventions as long as it
is crystal clear that it has to be mapped back to canonical form before
sending to another system.

Case study 1: Postscript
On different systems postscript ends up with different newline
conventions.  If you map the newline conventions it can break the
postscript document since there can be embedded binary.  So postscript
files on some systems don't work on other systems.

Case study 2: TIFF
The TIFF file format allows either big-endian or little-endian encoding
(it's very clear in the spec).  But many implementations only support one
of the two encodings, so many implementations now have options to generate
one or the other in order to interoperate.  Ever seen a "Mac Tiff" or "PC
Tiff" checkbox?  I have.

Let's not repeat the mistakes of the past.  If there's only one format,
there's only one way to do a parser which seems to work, and it will work
with everything.  If there's multiple formats, there's multiple ways to do
a parser which seems to work, and so it won't work with everything.

<Prev in Thread] Current Thread [Next in Thread>