Re: [invisibleXML/ixml] Normalizing line endings in ixml inputs (Issue #192)

[ Steven’s reply quoted below is a comment on issue #192 where I added a
  link. I’m replying to the mailing list where I emailed a longer
  description of the proposal yesterday. We should pick a medium for
  discussion, I suppose. ]

Steven Pemberton <notifications@github.com> writes:
> Apparently I'm not receiving all mail from W3C, because I didn't
> receive the referenced email, but I see a 4th alternative, namely to
> have a specific notation for newline, that implementations would map
> to the local machine's newline convention.

That’s a possibility, I guess, but…

> That way there is a generalised notation of newlines, without
> excluding other uses of the characters involved, nor requiring the
> implementations to mess with the input stream.

So they have to mess with the grammar instead? I have to replace the
notation for newline with the system’s newline conventions when I
construct the grammar? That doesn’t strike me as easier to do or easier
to understand.

> Using / as a strawperson, since that is what is used in poetry: 
>
> file = line++/, /*. 
> line = ~[/]+. 

I worry that users are going to find this quite confusing. First,
there’s the challenge of remembering that “/” is different from “"/"“.
Then there’s the fact that using the literal convention of the system on
which the grammar is developed will work. I think users on, for example
Windows, are much much more likely to use #D #A because that’s what
they’re used to than they are to remember that iXML has a special
metasyntactic character “/” for “end-of-line”. And this also seems like
an unnecessary use of one of the few remaining punctuation symbols that
we might want to use in the future.

This also doesn’t help in cases where I have files (as the test suite
does) that have different line-ending conventions. Test suite documents
created on Windows have #D #A, test suite documents created on Mac/Unix
have #A.

I think it would be much, much simpler and more robust to say that iXML
treats the input stream as a text file with lines delimited consistently
by a (insert choice-to-be-decided here) character.

                                        Be seeing you,
                                          norm

--
Norm Tovey-Walsh <ndw@nwalsh.com>
https://norm.tovey-walsh.com/

> …it is significant that we are called the 'information society'—not the
> thinking society, not the deliberative society, not the society of
> reason and rationality.--Lloyd Morrisett

Received on Wednesday, 25 October 2023 08:44:16 UTC