Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/5/84; site ur-cvsvax.UUCP Path: utzoo!watmath!clyde!burl!ulysses!allegra!mit-eddie!think!harvard!seismo!rochester!ur-cvsvax!bill From: bill@ur-cvsvax.UUCP (Bill Vaughn) Newsgroups: net.unix Subject: Re: Re: Unix text files Message-ID: <239@ur-cvsvax.UUCP> Date: Wed, 30-Oct-85 16:55:29 EST Article-I.D.: ur-cvsva.239 Posted: Wed Oct 30 16:55:29 1985 Date-Received: Sat, 2-Nov-85 04:02:43 EST References: <23@pixel.UUCP> <2235@brl-tgr.ARPA> <2333@flame.warwick.UUCP> Organization: Center for Visual Science, U. of Rochester Lines: 34 > > "Text consists of an ordered sequence of characters, with lines delimited > > by newline characters. Text is normally terminated by a newline. This > > newline should be considered to be followed by a (nonexistant) null line. > > The null line should not be considered to be part of the text. > > "If the last character of the text is not a newline, then consider > > the text to be terminated by a newline - null line pair; however, this > > newline - null line pair should not be considered to have been part of > > the file. > > > > I *think* that's right... > > Kay. > > Perhaps that is the best interpretation, but it sure is hard > to put all that into a formal grammar, whereas the original > concept was very simple: > > file ::= binary_file | text_file > binary_file ::= { byte }* > byte ::=> text_file ::= { text_line }* > text_line ::= { text_char }* newline > text_char ::= <7-bit ASCII character excluding NUL and newline> > newline ::= Won't this change do it: text_file ::= { text_line }* { text_char }* I'm assuming that { something }* means zero or more occurences of 'something'. I don't mean to imply that the change is desirable or trivial, but it doesn't seem to be 'hard'. Bill Vaughn Univ. of Rochester