Jason, Great work!
On Fri, Jun 16, 2023 at 5:23 PM Jason Yip <sripedia_getp...@slmail.me> wrote: > Hey all, > > > > The other "failing" regression tests concern the purpose of baseMoment. > > https://gitlab.com/lilypond/lilypond/uploads/9f968b929162a0d70d212ac2e99ec841/beam-subdivisions--notes-for-reimplementation--urs-liska.pdf > points out the flaw of the current implementation's dependence on the > value of baseMoment to subdivide beams. The way I read Urs's document, your results on input/regression/ beam-subdivide-shortened-beam.ly are actually correct. The shortened beams *should* be subdivided as if the notes were there, because the rests are part of the group. beam-subdivide-quarter-notes.ly likely fails because there is a special rule for subdividing 16 sixteenth notes by quarter notes; we'd like to subdivide by the quarter, but we have to keep a single beam to keep the beam alive, so it looks like we're subdividing by eighths. Urs addresses this in having rhythmic importance values < 8 on page 4. Before you work too hard on beam-subdivide-tuplets.ly, you may wish to investigate Urs's comment on local beat structure for tuplets. As far as I know now, you don't have a beat structure yet implement for subbeams; that may be a very powerful construct that could be helpful. I suspect that much of the concern about baseMoment and subdivision in Urs's paper can actually be resolved with baseMoment and beatStructure (including local beat structures). And using baseMoment and beatStructure would potentially resolve the problem of only allowing 1/x subdivision discussed on page 3. You have created a Sub_beam class. Is there a reason to use a Sub_beam class instead of just creating a new Beaming_pattern element as Urs suggests on page 7? Can a Sub_beam just be a Beaming_pattern? Perhaps using the same class of object would prevent duplication. Anyway this looks terrific! Carl P.S. Have you tried any of Urs's hard examples to see if your code works on them? It would be nice to see how many you have already solved! I suspect it's most of them. >