Simon King schrieb:
Hi Georg,
On Apr 22, 10:46 pm, "Georg S. Weber" <georgswe...@googlemail.com>
wrote:
I think I like "Wandlung" as the common umbrella term for both
"coercion" ("Umwandlung", I like that, too) and "conversion" (for the
latter I'd propose: "Verwandlung" --- but "Konversion" might do as
well, and would be a good memory hook for what is what).
Yes, conversion<->Konversion and coercion<->Umwandlung sounds good to
me.
Thank you for all the input!
Cheers,
Simon
I argue that you are working on the tutorial text?
I screened the text and found to passages in the text that use coercion:
http://www.sagemath.org/doc/tutorial/tour_rings.html
sage: i = CC(i) # floating point complex number
sage: i == CC.0
True
sage: a, b = 4/3, 2/3
sage: z = a + b*i
sage: z
1.33333333333333 + 0.666666666666667*I
sage: z.imag() # imaginary part
0.666666666666667
sage: z.real() == a # automatic coercion before comparison
True
sage: a + b
at this place in the document coercion in the comment is used just as a
comment, I think you do not plan to translate, but is is used in the
sense of type conversion, in German "Typkonvertierung" oder
"Typumwandlung".
The second passage I found was at
http://www.sagemath.org/doc/tutorial/programming.html
... When comparing objects of different types in Sage, in most cases
Sage tries to find a canonical coercion of both objects to a common
parent. If successful, the comparison is performed between the coerced
objects; if not successful the objects are considered not equal. For
testing whether two variables reference the same object use is. For example:
sage: 1 is 2/2
False
sage: 1 is 1
False
sage: 1 == 2/2
True
There also is the problem of comparison of (eventually) different data
types, so you have to find a "caninical coercion that allows a
comparison compliant to rules", say a "eine regelkonforme Typumwandlung,
die eine Vergleichsoperation erlaubt".
In the given example of the tutorial == only checks equality of the
value, that is why 1 ==2/2 gives True. The is-operator of Sage (and
Python) not only checks the equality of the numeric value but checks if
the two objects refer to the same object. Some examples:
sage: a= "something"
sage: b = None
sage: a is not None
True
sage: b is None
True
sage: a is b
False
sage: None
sage: type(b)
<type 'NoneType'>
sage: type(a)
<type 'str'>
sage: c=1
sage: d=1.0
sage: c==d
True
sage: c is d
False
sage: type(c)
<type 'sage.rings.integer.Integer'>
sage: type(d)
<type 'sage.rings.real_mpfr.RealLiteral'>
sage:
If (("I do not work on this"== True) or ("I do not find it usefull"==
True)) then "sorry for noise!"
It would be agood idea to give the source of the term you are asking
for. Most often a translation depends on the context!
Tnx & Regards
--
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org