[sage-devel] Re: making new infix operators

2007-09-26 Thread Craig Citro
>> The best I've come up with at this point is, given graphs >> A,B,C,D,E, the >> union is: >> >> A.union(B).union(C).union(D).union(E) > > I actually think that this looks very clear, despite the lack of > infix operators. > I agree -- especially since it looks like a literal translation of th

[sage-devel] Re: making new infix operators

2007-09-26 Thread Jason Grout
Mike Hansen wrote: > Of all the code I've read in lots of different languages, I think code > written for Mathematica has been the least transparent. I guess I've always loved functional languages, so the simple core principles appealed to me right away. Some things I love include the consistenc

[sage-devel] Re: making new infix operators

2007-09-26 Thread Robert Bradshaw
On Sep 26, 2007, at 8:59 PM, Jason Grout wrote: > Robert Bradshaw wrote: >> The sage coercion model guarantees that when x.__add__(y) is called >> (well, technically x._add_ or x._add_c_impl), the argument y is of >> the same type and parent as x. For example >> >> sage: R. = ZZ[] >> sage: x+1/2

[sage-devel] Re: making new infix operators

2007-09-26 Thread Mike Hansen
> The best I've come up with at this point is, given graphs A,B,C,D,E, the > union is: > > A.union(B).union(C).union(D).union(E) > > where the union function returns the modified graph each time so I can > keep chaining union function calls. The union actually modifies the > graph A, so if you wa

[sage-devel] Re: making new infix operators

2007-09-26 Thread Jason Grout
Robert Bradshaw wrote: > The sage coercion model guarantees that when x.__add__(y) is called > (well, technically x._add_ or x._add_c_impl), the argument y is of > the same type and parent as x. For example > > sage: R. = ZZ[] > sage: x+1/2 > x + 1/2 > sage: parent(x) > Univariate Polynomial

[sage-devel] Re: making new infix operators

2007-09-26 Thread Robert Bradshaw
The sage coercion model guarantees that when x.__add__(y) is called (well, technically x._add_ or x._add_c_impl), the argument y is of the same type and parent as x. For example sage: R. = ZZ[] sage: x+1/2 x + 1/2 sage: parent(x) Univariate Polynomial Ring in x over Integer Ring sage: parent(

[sage-devel] Re: gmp and mpfr

2007-09-26 Thread Michael
I managed to get gmp, mpfr, and mpfrcpp to compile and link successfully. It took a bit of effort to get it working, so I thought I'd record my settings here in case other people find them useful machine: G5 powerpc, mac os x 10.4.10, gcc 4.0.1: settings for gmp-4.2.1: ./configure --enable-cxx

[sage-devel] Re: GPL "version 2 or later" permission request

2007-09-26 Thread Bill Hart
Michael, Whilst I don't necessarily disagree with your conclusions, the survey was conducted by a large IT analysis firm called Evans Data Corporation which as far as I can tell has been producing surveys for around 10 years. They explicitly spell out their methodology on their website and I don'

[sage-devel] Re: making new infix operators

2007-09-26 Thread Mike Hansen
Of all the code I've read in lots of different languages, I think code written for Mathematica has been the least transparent. --Mike On 9/26/07, Chris Chiasson <[EMAIL PROTECTED]> wrote: > > It might be worth pointing out that adding "new" syntax in Mathematica > is (usually) done by assignment

[sage-devel] Re: making new infix operators

2007-09-26 Thread Chris Chiasson
It might be worth pointing out that adding "new" syntax in Mathematica is (usually) done by assignments to the function that transforms general two dimensional input into source code. That isn't really the same thing as adding a new operator to the language itself. On Sep 26, 2:07 pm, Jason Grout

[sage-devel] Re: making new infix operators

2007-09-26 Thread Jason Grout
cwitty wrote: > On Sep 26, 7:31 am, Jason Grout <[EMAIL PROTECTED]> wrote: >> Can we define custom infix operators? Suppose I'd like "boxproduct" to >> be an infix operator. Could I make that work? >> >> Thanks, >> >> Jason > > If you're willing to put a lot of effort into the project, you migh

[sage-devel] SAGE-2.8.5.1 released

2007-09-26 Thread William Stein
Hi, I have released sage-2.8.5.1.http://sagemath.org SAGE 2.8.5.1 This is a minor bug fix release that does have a lot of new code related specifically to algebraic number theory (especially relative number fields). 702 Robert Bradshaw -- Bug fixes for the ellipsis range notation

[sage-devel] Re: GPL "version 2 or later" permission request

2007-09-26 Thread mabshoff
On Sep 26, 6:06 pm, Bill Hart <[EMAIL PROTECTED]> wrote: > There's an interesting article on slashdot.org today about the > reception the GPLv3 is getting. > > Bill. Hello Bill, I would consider that article pretty worthless. I wouldn't even call it an article, it is just a press release. Th

[sage-devel] Re: sage-2.8.5 on ia64-Linux

2007-09-26 Thread Kate
Bill, On my ia64-Linux machine, I get the following error with the "-funroll-loops" option. I am using gcc-4.2.1. If I take out that option, things compile fine. make[2]: Entering directory `/home/kate/sage/sage-2.8.5-ia64-Linux/ spkg/build/flint-0.2.p2/src' gcc -std=c99 -I"/usr/include" -I/ho

[sage-devel] Re: making new infix operators

2007-09-26 Thread cwitty
On Sep 26, 7:31 am, Jason Grout <[EMAIL PROTECTED]> wrote: > Can we define custom infix operators? Suppose I'd like "boxproduct" to > be an infix operator. Could I make that work? > > Thanks, > > Jason If you're willing to put a lot of effort into the project, you might be able to do something

[sage-devel] Re: GPL "version 2 or later" permission request

2007-09-26 Thread Ondrej Certik
> Well, as long as "is similar in spirit" is interpreted by a court in > the way we all would hope, then that's all good. > > I hope we can leave all this licensing stuff behind soon and get on > with writing great code. And how about just agreeing to release all the code with a copyright set to

[sage-devel] Re: making new infix operators

2007-09-26 Thread Nick Alexander
On 26-Sep-07, at 10:13 AM, John Cremona wrote: > > Nostalgia for Algol68 ! The line > > OP OVER = (INT n,d)RAT: cancel(RAT(n,d)); > > is taken from my implementation of rational numbers so "one half" > could be written > > 1 OVER 2 > > and I could also write > > DET M The past is the present:

[sage-devel] Re: making new infix operators

2007-09-26 Thread John Cremona
Nostalgia for Algol68 ! The line OP OVER = (INT n,d)RAT: cancel(RAT(n,d)); is taken from my implementation of rational numbers so "one half" could be written 1 OVER 2 and I could also write DET M for the determinant of a matrix (ok, that's prefix not infix). Don't mock, my original tables

[sage-devel] Re: making new infix operators

2007-09-26 Thread Mike Hansen
No, I don't think you can make custom infix operators in Python. With something as long as 'boxproduct', you'd probably just be better off making it a method. --Mike On 9/26/07, Jason Grout <[EMAIL PROTECTED]> wrote: > > Mike Hansen wrote: > > Since I don't think that graphs and polytopes fall

[sage-devel] Re: number fields

2007-09-26 Thread cwitty
On Sep 25, 6:40 pm, Bill Hart <[EMAIL PROTECTED]> wrote: > I still have a question about how one computes an approximate > polynomial for a + b for algebraic a and b, given approximate > polynomials for a and b, using interval arithmetic. I don't. :-) There are several possible representations f

[sage-devel] Fwd: SINGULAR's Licences

2007-09-26 Thread William Stein
-- Forwarded message -- From: [EMAIL PROTECTED] <[EMAIL PROTECTED]> Date: Sep 26, 2007 8:54 AM Subject: Re: SINGULAR's Licences To: Martin Albrecht <[EMAIL PROTECTED]> Cc: [EMAIL PROTECTED], [EMAIL PROTECTED] > > Hi there, > > on [sage-devel] there is this huge discussion going o

[sage-devel] Re: improved singular gcd

2007-09-26 Thread William Stein
On 9/26/07, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote: > Dear sage-devel readers, > > following the discussion on sage-devel last week we implemented a > modular approach to compute the multivariate gcd over QQ in > Singular. > We still need to develop the heuristic when to prefer > EZGCD or the

[sage-devel] Re: number fields

2007-09-26 Thread cwitty
On Sep 25, 4:37 pm, Bill Hart <[EMAIL PROTECTED]> wrote: > Here is my second question (one looks doubly smart if one has two > difficult questions and still no clue): is it true that one can easily > tell if two algebraic numbers are *not* equal in this system, but to > check if they are equal, on

[sage-devel] Re: GPL "version 2 or later" permission request

2007-09-26 Thread Bill Hart
There's an interesting article on slashdot.org today about the reception the GPLv3 is getting. Bill. On 25 Sep, 21:47, David Harvey <[EMAIL PROTECTED]> wrote: > On Sep 25, 2007, at 4:43 PM, William Stein wrote: > > > > >> Okay, so what if MS makes the FSF people an offer they can't refuse, > >>

[sage-devel] Re: making new infix operators

2007-09-26 Thread Jason Grout
Mike Hansen wrote: > Since I don't think that graphs and polytopes fall under the SAGE > coercion model, overloading operators is pretty straightforward. You > just need to define the __add__ method in your class. x + y will call > x.__add__(y). > > sage: class Foo: > : def __add__(self