The point is that I want generic constructors which given a Ring will give me a Ring, given SemiRing will give me a SemiRing, etc... To unconditionally get Ring as result we need Ring as argument.
I'm not against this.
Once the argument type is restricted to Ring this restriction will propagate up the category hierarchy meaning that restricted constructor is useless for building generic ones.
OK, then throw AbelianMonoidRing away or rather rename it properly. (I still don't have a good new name.) The only thing I am criticizing is that a monoid ring is a ring in my eyes. Now you have generalised it, fine, but don't call it by something ending in ...Ring. OK, "...SemiRing" would be allowed. ;-)
BTW: Earlier commit generalized 'IndexedDirectProductObject'. Conseqently 'IndexedDirectProductAbelianMonoid' (and few others) was no longer needed and was removed.
Removing is OK, but not confusing people, ehm, persons, ehm, one person = me. ;-)
Ralf -- You received this message because you are subscribed to the Google Groups "FriCAS - computer algebra system" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/fricas-devel?hl=en.
