On 24 July 2014 04:22, Robert Bradshaw <rober...@math.washington.edu> wrote:
> On Wed, Jul 23, 2014 at 5:47 PM, rjf <fate...@gmail.com> wrote:
>>
>>
>> On Saturday, July 19, 2014 8:22:39 AM UTC-7, Nils Bruin wrote:
>>>
>>> On Saturday, July 19, 2014 5:43:57 AM UTC-7, defeo wrote:
>>>>
>>>> However, Julia multimethods are backed up by a powerful coercion
>>>> system, so I do not understand the "step back" criticism.
>>>>
>>> That comment wasn't made with respect to Julia, because that would be
>>> comparing the coercion facilities of a CAS to those of a programming
>>> language. Coercion in a CAS tends to be a *lot* more complicated than what
>>> programming languages are designed for. As an example:
>>>
>>> Consider A+B where A is a polynomial in ZZ[x,y] and B is a power series in
>>> F_q[[x]] (finite field with q elements).
>>>
>>> Do you expect your CAS to make sense of that addition? Sage does.
>>
>> A  CAS that has representations for those two objects will very likely make
>> sense of that addition, so Sage is hardly unique.
>
> Show me one.

Not Magma, anyway:

Magma V2.20-6     Thu Jul 24 2014 09:18:47 on hilbert  [Seed = 4286344687]
Type ? for help.  Type <Ctrl>-D to quit.
> R1<x,y> := PolynomialRing(Integers(),2);
> f := x+y^2+5;
> f;
x + y^2 + 5
> q := 125;
> Fq := GF(q);
> R2<x> := PowerSeriesRing(Fq);
> g := R2!(3+x+x^4);
> g;
3 + x + x^4
> f+g;

>> f+g;
    ^
Runtime error in '+': Bad argument types
Argument types given: RngMPolElt, RngSerPowElt[FldFin]



>
>>> It returns an answer in F_q[[x]][y] (i.e., a polynomial in y over power
>>> series in x over F_q) . You can argue whether it's desirable for a system to
>>> try to be that smart, but all computer algebra systems I know are a "step
>>> back" relative to this. Programming languages do not tend to have type
>>> models that would even allow you to try and make sense of this kind of
>>> question.
>>
>>

> --
> 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.

-- 
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.

Reply via email to