On Mon, Dec 15, 2008 at 8:12 PM, Trevor Bača <trevorb...@gmail.com> wrote:

> * OK, so based on this understanding, can somebody please correct my
> understanding of the parsing (not the iteration, just the parsing) of the
> following expression (which is the same as my original example #2):
>
>   {
>     \new Voice {
>       c'8 c'8 c'8 c'8
>     }
>     d'8 d'8 d'8 d'8
>   }
>
> If I'm understanding how the parser works, then what should result here is a
> music expression that looks like this:
>
>                  Global
>                     V
>                \new Score
>                     V
>                \new Staff
>                     V
>                \new Voice
>                     V
>                 Sequential
>                     V
>     \new Voice, d'8, d'8, d'8, d'8
>        V
>     Sequential
>        V
> c'8, c'8, c'8, c'8
>
>
> If I'm counting correctly, that's 15 total nodes in the expression tree.
> Eight atomic nodes and seven internal nodes. The Global, \new Score, \new
> Staff and the first \new Voice are all created implicitly.
>
> I know that the next part in the process is iteration. But I want to stop
> and check my understanding here: am I understanding the output of the parser
> correctly at this point?

No.  the \new Staff and \new Score are created at iteration time. Look
for path_to_acceptable_context().

Also, you can use the \displayMusic music function to get to the parse tree.
-- 
Han-Wen Nienhuys - han...@xs4all.nl - http://www.xs4all.nl/~hanwen
_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel

Reply via email to