Both are excellent suggestions.

We have to think a bit about the consequences.

Still, both would not solve the problem of what to return when the collection 
is empty.

> On 23 Mar 2020, at 15:47, Konrad Hinsen <konrad.hin...@fastmail.net> wrote:
> 
> Am 23.03.20 um 14:45 schrieb James Foster:
> 
>>> On Mar 23, 2020, at 6:06 AM, Sven Van Caekenberghe <s...@stfx.eu> wrote:
>>> 
>>> What you found out now is that the clever trick used to avoid picking an 
>>> additive identity (picking an element, counting it twice and then 
>>> subtracting it) leads to a loss of precision when floating point numbers 
>>> are involved. This is an important issue.
>> If this approach is to be preserved, then each class should have an additive 
>> identity so instead of adding and subtracting an object, we let the object 
>> tell us its zero.
> 
> Or define a singleton class "Zero" with a + method that returns the other 
> operand, and use that Zero object for the additive identity.
> 
> Konrad.
> 
> 


Reply via email to