On Wed, Feb 18, 2009 at 9:20 AM, mabshoff <mabsh...@googlemail.com> wrote:
>
>
>
> On Feb 18, 8:37 am, Martin Albrecht <m...@informatik.uni-bremen.de>
> wrote:
>> > So I'd like to know whether the focus should be on trying to
>> > get Macaulay2 integrated in Sage, or to develop this stuff natively in Sage
>> > using Macaulay2 as a cheat sheet (= porting functionality to Sage bit by
>> > bit, I guess is what I'm saying).
>>
>> Hi, due to the issues pointed out by Michael I guess porting stuff to Sage
>> should be the preferred option for now. I guess a start would be to figure
>> out what user's really really like about M2 and then see what we can do about
>> that. However, that strategy might not be well received by the audience of
>> SD14?
>
> I can imagine that will not help. Today I am surprised that no one
> ever made a push back in the good old days of 2006 to include M2 in
> Sage since back then the hurdle was much, much lower.

That's not quite right.  In 2004 and also a little in 2005 I *visited*
Dan Grayson for several days at UIUC and had many long discussions
with him about the design and implementation of computer algebra
systems, including Mathematica (he played a major role in implementing
the first version), Macaulay 2, Python, etc.  This was when Sage was
just starting.   For a while Dan lobbied for me to build Sage on top
of Macaulay 2 instead of Python.  I learned quite a lot from Dan about
math software, and also learned how difficult implementing and
supporting a computer algebra system is, and in particular how hard
designing a programming language is.     I chose Python for a number
of reasons, with one big reason being that Dan appropriately scared me
away from trying to design and implement my own programming language
from scratch.

In 2005 when it became clear that we needed a serious library or
system for commutative algebra, the only options were Macaulay 2 and
Singular.  It was relatively easy to build Singular on a wide range of
platforms, including Linuxes, Cygwin, and OS X.  Macaulay 2, on the
other hand, was impossible for me to build on a wide range of systems;
I'm not sure the situation has improved.   Also, at the time Singular
appeared to be a much more active (and stable) project than Macaulay
2.    Today it appears that Macaulay 2 is under more active
development than Singular, but I can't really tell since Singular's
development model is fairly closed.

As of 2009, I think Macaulay2 should not go into the core of Sage as a
standard package unless it were clearly superior to Singular, *and*
Singular would be removed from Sage. I don't see that happening.
We've been very good at managing complexity in the Sage project, but
we're only human, and I do not think it is reasonable for us to try to
manage Macaulay2 + Singular + a billion other things, and the
corresponding build issues that would entail.  We do have to maintain
some focus and for now at least acknowledge that we can't do
everything at once.

Martin said:
> should be the preferred option for now. I guess a start would be to figure
> out what user's really really like about M2 and then see what we can do about
> that. However, that strategy might not be well received by the audience of 
> SD14?

I think being completely *honest* and forthright about what the Sage
project can and can't do is the best approach.   The point of this
workshop should be to listen to what user's want, and see whether
there is any way we can provide that given our resources and
enthusiasm to improve the world of mathematical software.   I'm
guessing the best thing to do regarding M2 will be to think of ways to
much more greatly improve the Sage <--> M2 interface. For example, one
coding project I suggested is to embed the Python interpreter in M2,
and hence make it possible for M2 users to call Sage at the C-library
level.  Conversely, we could try to make a better Sage --> M2 C-level
interface.   We could also make much more high-level wrapping.      We
should also make it vastly easier to build an optional M2 spkg.

 -- William

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