On Sat, Sep 8, 2012 at 12:00 PM, David Kastrup <d...@gnu.org> wrote:
> 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.

Right; all that should go away with guile v2 though, which uses Boehm GC

> Probably historic because Bison did not use to come with C++ skeleton
> files?

Correct. The best we had was the pure_parser option.

-- 
Han-Wen Nienhuys - han...@xs4all.nl - http://www.xs4all.nl/~hanwen

_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel

Reply via email to