Sage has a lot of classes like Element, ModuleElement, RingElement,
CommutativeRingElement, ...
I have often wondered if we really need all these classes. What's the
compelling reason that we don't have just Element? All these different
classes are really just frontends to the coercion model implementing
various arithmetic methods. Of course, you could argue that Element
should not have __add__ and __mul__ (since not all elements can be added
or multiplied). But it doesn't really hurt to have them and raise
NotImplementedError (unless I'm missing something).
Unifying all these Element classes will simplify element.pyx a lot for
the better. It would also make it easier to add support for new
methods: for example __floordiv__ still doesn't use the coercion model.
Jeroen.
--
You received this message because you are subscribed to the Google Groups
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.