[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Cleanup and generalization: get rid of Audio_column. (issue 42600043
From: |
Devon Schudy |
Subject: |
Re: Cleanup and generalization: get rid of Audio_column. (issue 42600043) |
Date: |
Sun, 22 Dec 2013 19:08:41 -0500 |
I wrote:
> I was imagining it. [...] it never actually says it *can't* be
> explicitly created.
It's in engraver-init.ly: “You cannot explicitly instantiate a
@code{Score} context”.
David Kastrup wrote:
> > Doing start_translation_timestep in mid-timestep is unclean, though,
> > and may confuse translators that expect it to be called at the
> > beginning.
>
> How would they know the difference? There is nothing sent to an
> implicit context before it is created. If it did not miss any piece
> of the action, where is the problem?
They could miss earlier events from that timestep — but if no
translators care about events from before their context was created,
that doesn't matter. If a translator announces something in
start_translation_timestep (is this allowed?), other translators would
hear it in mid-timestep.
> Part of the reason to use events for about anything is the ability to
> _record_ them and reply them, like the quote iterator does.
Does it replay (or even see) timestep boundaries?
> I think I find the "start_translation_timestep will occur before
> process_music" invariant pretty important
Yeah. The CG even says so, in the engraver tutorial:
“`start_translation_timestep ()' is called before any user information
enters the translators, i.e., no property operations (\set, \override,
etc.) or events have been processed yet.”