Date: Thu, 15 Jun 2017 08:12:37 +0000 From: =?UTF-8?B?WWFubiBSw6lnaXMtR2lhbmFz?= <y...@pps.univ-paris-diderot.fr> Message-ID: <cam+uc3wc06e6tgoegqppw7tcktydx0fgperskh498jrve37...@mail.gmail.com>
| For the moment, our implementation will continue to follow the shell | grammar of the POSIX standard (i.e. we will continue to accept "until a do | b; done" as a syntactically valid script. Does your implementation also accept until a "do" b; done as valid? If not why not? Because in the shell that is an identical (invalid) command to the one you gave. The grammar does not make that (either version) valid, a "do" reserved word is required between "until" and "done", and there is none here. Words in shell do not get to be reserved words just because they are spelled the same was as a reserved word, they also have to occur in a position where a reserved word can occur. If this were not true, it would be impossible to write echo waiting for input because that would have a "for" reserved word sitting in the middle of it, and there is no grammar rule that allows that. Yet it is possible, try it in any shell... kre