Han-Wen Nienhuys <hanw...@gmail.com> writes: > On Fri, Sep 7, 2012 at 4:42 AM, David Kastrup <d...@gnu.org> wrote: >>> There's one thing worth clarifying: when i say "syntax changes", i >>> mean "changes in how user input looks like". So a renaming of a >>> command is a syntax change to me (despite the fact that no grammar >>> rules change). >>> That's probably confusing - what word should i use when i mean >>> "changes in how user input looks like"? >> >> No idea. What we have under the umbrella of "syntax discussion" >> contains three things: lexical units, grammar and vocabulary, mostly >> implemented in lexer.ll, parser.yy, and *.ly respectively. In order to >> keep syntax predictable, we want to be able to solve most problems just >> by extending the vocabulary. That means that lexical units and grammar >> should be as generic, powerful, and simple as possible. Specialized >> lexical modes take power from the vocabulary. We want to avoid them as >> much as possible given our historic constraints. > > I completely agree with this. I have been giving some people a hard > time in this discussion, but that is primarily for wanting to mess > with either lexer.ll or parser.yy. As long as you don't that, I will > not object fiercely to what syntax proposal anyone comes up with.
Actually, is there a particular reason we are generating a C parser rather than a C++ parser? The implications regarding marking and garbage collection of semantic values are rather awful. Probably historic because Bison did not use to come with C++ skeleton files? -- David Kastrup _______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel