[Top][All Lists]

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

Re: Sets TabVoice Stem height to ##f (issue 6303065)

From: mtsolo
Subject: Re: Sets TabVoice Stem height to ##f (issue 6303065)
Date: Tue, 12 Jun 2012 13:47:34 +0000

On 2012/06/12 13:43:09, dak wrote:
Here is a code example from

       Interval weights (1 - multiplier, multiplier);

       if (feather_dir != LEFT)
         weights.swap ();

This is _hogwash_.  weights is not an _interval_ here, but a pair of
Swapping the bounds of an interval does not even make _sense_.  Where
is the
point in type abstraction if one creates total conceptual chaos
without inherent
relation to the invariants of the mathematical model underlying the

swap never should have been a public member function (it is used
internally when
mirroring intervals).

If a type is named "Interval", it needs to be employed as an Interval,
not as
something totally different that relies on implementation details.

Otherwise type abstraction makes code _less_ maintainable rather than
since you always need to take all side-effects into consideration.

Dunno - it sounds like time for clean up.

Y-position of beams were stored as intervals for years (they may still
be - I forget).

This sounds like a pretty major task, so as always, I'd touch base w/
Han-Wen to see what Intervals were supposed to be at their inception and
then evaluate what they've grown into.

We can then firm up an Interval API and write a strongly-worded comment
in interval.hh and interval.tcc NOT to touch either of these files.

reply via email to

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