lilypond-devel
[Top][All Lists]
Advanced

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

Re: Cleanup and generalization: get rid of Audio_column. (issue 42600043


From: dak
Subject: Re: Cleanup and generalization: get rid of Audio_column. (issue 42600043)
Date: Sat, 21 Dec 2013 21:43:15 +0000

On 2013/12/21 21:29:13, Devon Schudy wrote:
dak 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?

It passes the tests, but I wouldn't be surprised if it
introduces bugs. I don't think it's an improvement.

I don't see how we could do anything better.

Some possibilities to make iteration more maintainable:
  * Call start/stop_translation_timestep directly from
run_iterator_on_me, not through translators. Remove the Prepare and
OneTimeStep events.

Part of the reason to use events for about anything is the ability to
_record_ them and reply them, like the quote iterator does.

  * Create contexts in advance by calling create_children before each
timestep.
  * Warn when contexts are created in mid-timestep.
  * Figure out other context invariants and write them down.

I think I find the "start_translation_timestep will occur before
process_music" invariant pretty important, even if it is reduced to
"start_translation_timestep will occur before my own and any
subcontext's process_music", and not making a guarantee about _higher_
contexts process_music timing.


https://codereview.appspot.com/42600043/



reply via email to

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