> I do not understand this claim. As Ralf pointed out, there are good
> (i.e. "mathematical") reasons why it makes sense to multiply elements
> of GF(5) directly by integers. This has nothing to do with coercions
> or any other kind of type conversion per se. It makes sense to have
> this property of GF implemented locally. It would be inconvenient to
> have a symbol other than * to denote this operation. Because Python is
> dynamically typed, there is no alternative but to test some condition
> to determine what operation to perform. Using the coercion system to
> implement this kind of polymorphism moves some properties of GF into
> the coercion system instead of keeping it local.

Yes ! The clear notion is that GF(5) is a ZZ module. And I want to stress that
this has nothing to do with coercion. It is important to realize that we use
the same symbol "*" for internal product in group/ring/algebras and
action/scalar multiplication. When you want to multiply a 1000x1000 matrix by
a scalar, you don't build a 1000x1000 scalar matrix and apply the
multiplication algorithm for matrices...

Just my two cents...

Cheers,

Florent

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to 
sage-devel-unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to