Dan Eble <[email protected]> writes:

> On Jun 2, 2022, at 20:32, David Kastrup <[email protected]> wrote:
>> 
>> #(define-method (+ (a <Moment>) (b <Moment>)) (ly:moment-add a b))
>> #(define-method (- (a <Moment>) (b <Moment>)) (ly:moment-sub a b))
>
> Could we also introduce a distinction in type between points and spans
> of time?  "Measure 12 minus Measure 8" is 4 measures, but it is not
> Measure 4; and "Measure 12 plus Measure 8" is not a thing.

While I get your point, I think that this ship has sailed.  That's not
as much a problem of GOOPS but of the preexisting code.

I think the first point of cleanup would be to replace Moment's misuse
as a substitute for "Rational" (which did not have a Scheme
representation and was done at a time where Guile did not have
"arbitrary" precision rationals), like in baseMoment.

-- 
David Kastrup

Reply via email to