Hi Harm,

consider the following:
musicI = {}
musicII = {}

Obviouslyly:music-length returns #<Mom 0> for both:
#(pretty-print (ly:music-length musicI))
#(pretty-print (ly:music-length musicII))

Why the result of below is different:
#(pretty-print
   (ly:moment-div (ly:music-length musicI) (ly:music-length musicII)))
-> #<Mom 0>
#(pretty-print
    (ly:moment-div ZERO-MOMENT ZERO-MOMENT))
-> #<Mom nanGinfinity>

Probably Dan will be able to say more about this; I just want to give a maybe concise data point:

\version "2.22" music = {} #(define ZERO (ly:music-length music)) #(pretty-print (equal? ZERO ZERO-MOMENT)) #(pretty-print (ly:moment-div ZERO ZERO-MOMENT)) #(pretty-print (ly:moment-div ZERO ZERO)) #(pretty-print (ly:moment-div ZERO-MOMENT ZERO)) #(pretty-print (ly:moment-div ZERO-MOMENT ZERO-MOMENT))

yields with 2.22.1:

#t #<Mom 0> #<Mom 0> #<Mom 0> #<Mom 0> and with 2.26.0: #t #<Mom infinityGinfinity> #<Mom 0> #<Mom 0> #<Mom nanGinfinity>

Lukas

Reply via email to