On Sep 24, 2020, at 10:28, Aaron Hill <lilyp...@hillvisions.com> wrote:
> 
> I doubt this is the sort of thing convert-ly could patch, so the proposed 
> change in behavior would break user-created engravers that expect to always 
> get a pair of (start|stop)-translation-timestep calls.  As such, it makes far 
> more sense that LilyPond automatically take care of invoking 
> start-translation-timestep after initialize.

This could probably be done (I'm not looking at the code right now), but then 
what would it mean to start a timestep?  Starting a timestep would not be a 
pass over existing engravers, calling their start-translation-timestep methods 
with nothing in between.  When an engraver is told that the timestep is 
beginning, it might actually mean that the current timestep began a while ago 
and an unknown number of other engravers have since done some processing other 
than what's in their start-translation-timestep methods.

> The argument for uniform behavior is sound, though one must be careful the 
> behavior to which you are aligning is correct.  My vote is that "starts" and 
> "stops" must always be paired.  If there were cases where "start" was not 
> occurring, *that* is the faulty behavior to address.

I understand your point, but I don't see that that can be achieved without 
abusing the current terminology.

Changing it to work this way and renaming the methods to describe reality might 
be reasonable.
— 
Dan


Reply via email to