lilypond-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Scheme function to print out active Voice context during interpretat


From: Patrick McCarty
Subject: Re: Scheme function to print out active Voice context during interpretation?
Date: Mon, 15 Dec 2008 16:09:56 -0800

Hi Trevor,

On Mon, Dec 15, 2008 at 2:12 PM, Trevor Bača <address@hidden> 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?

I'm pretty sure this would be the result *after* iteration.

The parser output can be visualized with \displayMusic.  So your
example would look like this, using your convention above:

          Sequential
          V        V
  \new Voice       d'8, d'8, d'8, d'8
     V
  Sequential
     V
  c'8, c'8, c'8, c'8

After this, the iteration process starts, proceeding moment by moment
and making sure everything is placed in the correct context.  Then you
would end up with a tree that looks like the one you posted.  I
believe the implicit creation of contexts happens during iteration.

(I could be completely wrong, but it makes sense to me).

-Patrick

reply via email to

[Prev in Thread] Current Thread [Next in Thread]