2011/10/3 Sébastien Brisard <sebastien.bris...@m4x.org>:
> 2011/10/3 Phil Steitz <phil.ste...@gmail.com>:
>> On 10/3/11 7:00 AM, Sébastien Brisard wrote:
>>> Hello,
>>> I'm using quite extensively the Field/FieldElement interfaces, but am
>>> sometimes feeling the need for less stringent sets like Abelian Groups
>>> (no multiplication) and Rings (no division). This would allow me to
>>> carry out some calculations on different types of number simply by
>>> changing the generic type.
>>> I was thinking of adding some interfaces along the lines of the two
>>> above mentioned
>>>   - AbelianGroup<T>, AbelianGroupElement<T>,
>>>   - Ring<T>, RingElement<T>.
>>>
>>> Do you think that would be useful?
>>
>> If you have practical applications, then OK; if this is just to have
>> more math abstractions, we have generally been conservative about
>> that (i.e., introduce the abstractions as we need them for practical
>> applications).  Can you describe a little the use cases?
>>
>> Phil
>>
> Hi Phil,
>
> The application I have in mind is the manipulation of Taylor
> expansions (stored as multivariate polynomials). I'm trying to use
> genericity in order to be able to work with different number
> representations (exact fractions, double values, etc...).
> From this point of view, it would be useful to be able to have a
> wrapper class for (for example) integers. However, this is not
> possible at the moment, since Z is only a ring.
>
> OK, I could go on, but honestly Phil, I think I won't be able to
> convince you. Indeed, if this feature existed, I would use it, but I
> must admit that I proposed it because I also find such a feature
> "beautiful" (which is not a very good reason for adding it to CM).
> What I'm going to do is implement those mathematical entities on my
> side, and try and use them. If I realize they could be useful to the
> core CM library, I'll raise this issue again later.

Sounds like a good plan.  Don't get me wrong - we added Field for the
same kinds of reasons (needed for some applications and code reuse).

Phil


> Thank you for trying to reason me...
> Sébastien
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
> For additional commands, e-mail: dev-h...@commons.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
For additional commands, e-mail: dev-h...@commons.apache.org

Reply via email to