Hi Michael (cc: sage-devel and bcc: some sponsors),

What's the quick status on:

 * OS X 64-bit porting

 * Cygwin porting

 * MSVC porting

 * Solaris porting

 * Itanium porting

I want to jump into something (and maybe get others to), but I don't know
which to do.

Frankly, I think that  now that Sage-3.0 is out and we basically (very roughly)
have the full range of features we want (modulo polish and little
things), porting
is by far what should be our current number one priority.  If we don't
do it *NOW*,
then it could potentially be vastly harder later.  If you had not been release
manager for the last 7 months, it *would* be vastly harder now.   And
fortunately,
we now have over 50% doctest coverage, which will help a lot.

Now is the time to port Sage.  And it's going to take more than just you
working on it.  I think your number one priority should be to get Sage
to build automatically as much as possible.  But beyond that you should
let the rest of us do a lot of work making things actually work correctly.

Here is *my* personal impression of the porting situation.

I think the above five platforms should be our target for
the next year.  Anything beyond that is to worry about later (e.g., iphone).

Based on who is paying us the order of priority should be:

1. Itanium
2. Cygwin
3. Solaris
4. MSVC
5. OS X 64-bit

Based on difficulty and developer resources, I think the
order from easiest to hardest is:

1. Itanium
2. OS X 64-bit
3. Cygwin
4. Solaris
5. MSVC

These match up except OS X 64-bit.

For each, here's my rough understanding of the status:

1. Itanium Linux: we need to incorporate Steve Linton's patches to Gap.
There is an issue with Singular, but maybe that is fixed.    There are
issues making the build 100% automatic on SLES, and some possible
ATLAS build issues.

2. OS X 64-bit.  There are a huge slew of little issues.  There are
several people who could and would love to work on this, but you're
currently heroically doing all the work.   It will be a lot easier to get
help when Sage builds but goes boom on startup.  This is hard
because OS X is a bi-arch build environment like Solaris.

3. Cygwin: There are tons of liittle fixes and changes you
have posted to the wiki.  When all these are applied, Sage mostly
builds. (?)  There are some serious unresolved problems
involving libsingular.   Otherwise this should be relatively
smooth sailing.  (Three years ago when I ported Sage from
Linux to OS X and Cygwin, it was *much* easier to port
to Cygwin than OS X...  but then Cygwin itself was fundamentally
broken by one very annoying Cygwin developer, etc., which made
for a very painful 6 months.)

4. Solaris: It's almost done, but a lot of things don't work.
Solaris support for Sage has been "nearly there" for 4 years; I know
since I have spent a lot of time on it.  Lisp/Maxima sucks big time, but
at least Maxima's not a binary link to Sage, so we can worry about
that separately.

5. MSVC: Massive numbers of issues all over the place.
Well worth the effort.  Your cup of tea (not mine).
Lack of pexpect for windows is  a major problem.


Anyway, in summary, we need to make Itanium Linux Sage absolutely 100%
solid ASAP, and make Sage work on Cygwin as well very soon.
OS X 64-bit will hopefully soon be more of a community effort.
Solaris is really a "the devil is in the details" thing, and we just need
to make it happen.

Until Sage is ported to the above architectures (at least everything but MSVC),
we should be very very very reluctant to add any additional external standard
spkg's to Sage.   That's my opinion at least.  Now's the time in the Sage life
cycle that we need to make damn sure Sage works on a really wide
range of machines.  Otherwise we will start loosing potential users
left and right.    I bet we've easily lost around 100 potential users
in the last
couple of days because of lack of sufficient sage ports.

""I'll give Sage another try when I get a new computer (which
hopefully isn't too far off), or when there is a native Sage for
windows. Thank you for your time. For now, I will stick to
straight Python."  -- From sage-support yesterday.

Anyway, I think you'll probably strongly agree with some of this email,
since I think porting is the part of Sage you care about the most.   If nothing
else, I think I'm very much on the same page as you regarding this.

 -- William


-- 
William Stein
Associate Professor of Mathematics
University of Washington
http://wstein.org

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

Reply via email to