[sage-devel] new talk: The Development of Symbolic Calculus in Sage

2010-07-16 Thread William Stein
http://wstein.org/talks/stein-sd24/stein-sd24.pdf

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

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


[sage-devel] sage is getting big

2010-07-16 Thread William Stein
Here are some stats about "lines in the sage library" of Sage-4.5:



cd SAGE_ROOT/devel/sage/sage/

  - There are 659 Cython files in Sage:

flat:sage wstein$ find . -print |grep "pyx\|pxi\|pxd" |wc -l
 659

  - There are XX Cython modules in Sage

flat:sage wstein$ grep Extension ../module_list.py |wc -l
 283

  - There are XX lines of Cython files

flat:sage wstein$ find . -print |grep "pyx\|pxi\|pxd" | xargs  cat |wc -l
  313548

  - There are XX unique lines of Cython files

flat:sage wstein$ find . -print |grep "pyx\|pxi\|pxd" | xargs  cat
|sort|uniq|wc -l
  150991


We (=Craig Citro and Gonzalo Tornaria) wrote a sophisticated
dependency checker just for Sage, so that if you modify one of
these 659 Cython files, then type "sage -br", exactly the right
cython files are rebuilt.

Also, we have a parallel build system, so if you do

  export MAKE="make -j8"
  sage -b

then 8 cython files will be compiled in parallel.



  - There are 1192 Python files in Sage:

flat:sage wstein$ find . -print |grep ".py$" |wc -l
1192

  - There are XX lines of Cython files

flat:sage wstein$ find . -print |grep ".py$" | xargs cat | wc -l
  635164

  - There are XX unique lines of Cython files

flat:sage wstein$ find . -print |grep ".py$" | xargs cat | sort|uniq |wc -l
  309430

Yeah... the Sage library is pretty daunting:

flat:sage wstein$ find . -print |grep "pyx\|pxi\|pxd\|.py$" | xargs  cat |wc -l
  948712
flat:sage wstein$ find . -print |grep "pyx\|pxi\|pxd\|.py$" | xargs
cat |sort|uniq|wc -l
  453612

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


Re: [sage-devel] ATLAS - proposal to allow a threaded build.

2010-07-16 Thread Martin Albrecht
> How does this sound.
> 
> 1) We add an environment variable SAGE_ATLAS_THREADS
> 2) If unset, then the behavior is unchanged, so we build an unthreaded
> ATLAS. 3) If set to "auto":
> 
> $ export SAGE_ATLAS_THREADS=auto
> 
> then we let ATLAS automatically determine the number of threads. (I think
> that is what ATLAS determines as the number of processors on your system.
> IIRC, on 't2.math' this was 128).
> 
> 4) If set to an integer N,
> 
> $ export SAGE_ATLAS_THREADS=8
> 
> we use N (in this case 8) threads.

Hi,

somehow I get the feeling the number of environment variables in Sage is 
increasing on an exponential rate.

I'd much rather not have some ATLAS specific environment variable. Instead - 
if we need a variable - I'd have SAGE_NUM_CORES or something.

William convinced me the other day that it would be better to build with 
multicore support by default (since that's the future anyway) instead of only 
if some obscure variable is set. I'm sure this would require more work but 
might be a worthwhile activity.

Martin

-- 
name: Martin Albrecht
_pgp: http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x8EF0DC99
_otr: 47F43D1A 5D68C36F 468BAEBA 640E8856 D7951CCF
_www: http://www.informatik.uni-bremen.de/~malb
_jab: martinralbre...@jabber.ccc.de

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


Re: [sage-devel] Import problems

2010-07-16 Thread Carl Witty
On Fri, Jul 16, 2010 at 8:21 PM, koffie  wrote:
> Dear All,
>
> I was writing some code for sage and ran into trouble. The code was
> working just fine when it was a standalone function. Then I tried to
> add it to a pyx file (sage/rings/fraction_field_element.pyx to be
> precise) and ran into trouble. Somewhere in the code I would like to
> use the command PolynomialRing, so I had to import it for else it
> wouldn't build. So I added the line
>
> from sage.rings.polynomial.polynomial_ring_constructor import
> PolynomialRing
>
> to the file. After having done this sage will build, but when running
> sage I get into trouble. I have no idea about how importing and stuff
> works in python/cython so if someone could help me with this I would
> be very glad.

It looks like you've got a problem with a circular import, where file
A imports file B, which imports file C, ..., which imports file A.

I don't know of a simple, systematic, efficient way to solve such
problems.  The easy way is to move this line:

from sage.rings.polynomial.polynomial_ring_constructor import PolynomialRing

inside the function you just added.  (For example, just put it on the
line before you use PolynomialRing.)  The only problem with this
solution is that it adds a tiny bit of time (maybe a few microseconds)
to your function.  If your function is very time-critical, you should
find another solution; but otherwise this should work fine.

Carl

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


Re: [sage-devel] About mpmath and sympy

2010-07-16 Thread François Bissey
> As an aside, if two upstream packages include another upstream
> package (e.g. both include GMP) what does Sage do? Are there
> two copies of GMP? They could have different versions of the
> same package since project 1 could have stopped at one version
> and project 2 could have stopped at another. Sage could be
> using a third.

Funny you mentioned GMP. At one point givaro was shipping its own 
GMP. It was actually an accident on the givaro devs part - and I had
notified them. But I didn't notify this list. So in at least one release
givaro was actually overwriting part of GMP.

For your question I guess it depends if it is kept internally without 
clash with anything else or it actively tries to overwrite things that 
have been installed already.
The second one is a no-no, and the first one should be fixed to use upstream
but not as a matter of emergency I would guess.

Francois

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


[sage-devel] Import problems

2010-07-16 Thread koffie
Dear All,

I was writing some code for sage and ran into trouble. The code was
working just fine when it was a standalone function. Then I tried to
add it to a pyx file (sage/rings/fraction_field_element.pyx to be
precise) and ran into trouble. Somewhere in the code I would like to
use the command PolynomialRing, so I had to import it for else it
wouldn't build. So I added the line

from sage.rings.polynomial.polynomial_ring_constructor import
PolynomialRing

to the file. After having done this sage will build, but when running
sage I get into trouble. I have no idea about how importing and stuff
works in python/cython so if someone could help me with this I would
be very glad.


Below you will find the trouble I run in to when starting sage:

--
| Sage Version 4.4.4, Release Date: 2010-06-23   |
| Type notebook() for the GUI, and license() for information.|
--
ERROR: An unexpected error occurred while tokenizing input
The following traceback may be corrupted or invalid
The error message is: ('EOF in multi-line statement', (69, 0))

---
ImportError   Traceback (most recent call
last)

/Applications/sage/local/lib/python2.6/site-packages/IPython/
ipmaker.pyc in force_import(modname)
 64 reload(sys.modules[modname])
 65 else:
---> 66 __import__(modname)
 67
 68

/Applications/sage/local/bin/ipy_profile_sage.py in ()
  5 preparser(True)
  6
> 7 import sage.all_cmdline
  8 sage.all_cmdline._init_cmdline(globals())
  9

/Applications/sage/local/lib/python2.6/site-packages/sage/
all_cmdline.py in ()
 12 try:
 13
---> 14 from sage.all import *
 15 from sage.calculus.predefined import x
 16 preparser(on=True)

/Applications/sage/local/lib/python2.6/site-packages/sage/all.py in
()
 62 get_sigs()
 63
---> 64 from sage.misc.all   import * # takes a while
 65
 66 from sage.misc.sh import sh

/Applications/sage/local/lib/python2.6/site-packages/sage/misc/all.py
in ()
 68 from sage_eval import sage_eval, sageobj
 69
---> 70 from sage_input import sage_input
 71
 72 from cython import cython_lambda, cython_create_local_so

/Applications/sage/local/lib/python2.6/site-packages/sage/misc/
sage_input.py in ()
161 """
162
--> 163 from sage.misc.functional import parent
164 import math
165

/Applications/sage/local/lib/python2.6/site-packages/sage/misc/
functional.py in ()
 36
 37
---> 38 from sage.rings.complex_double import CDF
 39 from sage.rings.real_double import RDF, RealDoubleElement
 40

/Applications/sage/local/bin/complex_double.pyx in init
sage.rings.complex_double (sage/rings/complex_double.c:14319)()

/Applications/sage/local/lib/python2.6/site-packages/sage/rings/
complex_field.pyc in ComplexField(prec, names)
 84 if not C is None:
 85 return C
---> 86 C = ComplexField_class(prec)
 87 cache[prec] = weakref.ref(C)
 88 return C

/Applications/sage/local/lib/python2.6/site-packages/sage/rings/
complex_field.pyc in __init__(self, prec)
184 ParentWithGens.__init__(self, self._real_field(),
('I',), False, category = Fields())
185 #self._populate_coercion_lists_()

--> 186
self._populate_coercion_lists_(coerce_list=[complex_number.RRtoCC(self._real_field(),
self)])
187
188 def __reduce__(self):

/Applications/sage/local/lib/python2.6/site-packages/sage/rings/
complex_number.so in sage.rings.complex_number.RRtoCC.__init__ (sage/
rings/complex_number.c:13971)()

/Applications/sage/local/lib/python2.6/site-packages/sage/categories/
map.so in sage.categories.map.Map.__init__ (sage/categories/map.c:1951)
()

/Applications/sage/local/lib/python2.6/site-packages/sage/categories/
homset.pyc in Hom(X, Y, category)
150 # For the moment, this is the category, for compatibility
with the current implementations

151 # of Homset in rings, schemes, ...

--> 152 H = category.hom_category().parent_class(X, Y, category =
category)
153
154 ##_cache[key] = weakref.ref(H)


/Applications/sage/local/lib/python2.6/site-packages/sage/categories/
rings.pyc in __new__(cls, X, Y, category)
115 
116 """
--> 117 from sage.rings.homset import RingHomset
118 return RingHomset(X, Y, category = category)
119

/Applications/sage/local/lib/python2.6/site-packages/sage/rings/
homset.pyc in ()
 15
 16 import morphism
---> 17 import quotient_ring
 18
 19 def is_RingHomset(H):

/Applications/sage/local/lib/python2.6/site-packages/sage/rings/
quotient_ring.pyc in ()
 30 import commutative_ring
 31 import ideal
-

Re: [sage-devel] About mpmath and sympy

2010-07-16 Thread Tim Daly

As an aside, if two upstream packages include another upstream
package (e.g. both include GMP) what does Sage do? Are there
two copies of GMP? They could have different versions of the
same package since project 1 could have stopped at one version
and project 2 could have stopped at another. Sage could be
using a third.

François Bissey wrote:

  Hi,

  Newer sympy has a bundled copy of mpmath, what causes several
problems in my sagemath package. I was in vacation during most of
Mandriva 2010.1 freeze, and did not fully test the package for some
time, but I am working on an update for it; basically an 's/import
mpmath/import sympy.mpmath as mpmath/', but would like to know what
would be the better approach. (just letting the code use both leads to
SEGvs).

  The new sagemath package will conflict with
python-mpmath-0.14-1mdv2010.1 (forcing it to be uninstalled), because
the sympy is python-sympy-0.6.7-1mdv2010.1.



Hi Paulo,

that will probably be a pain for us in gentoo as well. 
At the moment we are sticking with sympy-0.6.6 as 
sympy-0.6.7 gives us trouble. The gentoo philosophy

at this point will be to remove mpmath from sympy and
make it a requirement. But I haven't been actively working
on that.

Francois

  


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


Re: [sage-devel] About mpmath and sympy

2010-07-16 Thread Paulo César Pereira de Andrade
2010/7/16 François Bissey :
>>   Hi,
>>
>>   Newer sympy has a bundled copy of mpmath, what causes several
>> problems in my sagemath package. I was in vacation during most of
>> Mandriva 2010.1 freeze, and did not fully test the package for some
>> time, but I am working on an update for it; basically an 's/import
>> mpmath/import sympy.mpmath as mpmath/', but would like to know what
>> would be the better approach. (just letting the code use both leads to
>> SEGvs).
>>
>>   The new sagemath package will conflict with
>> python-mpmath-0.14-1mdv2010.1 (forcing it to be uninstalled), because
>> the sympy is python-sympy-0.6.7-1mdv2010.1.
>>
> Hi Paulo,
>
> that will probably be a pain for us in gentoo as well.
> At the moment we are sticking with sympy-0.6.6 as
> sympy-0.6.7 gives us trouble. The gentoo philosophy
> at this point will be to remove mpmath from sympy and
> make it a requirement. But I haven't been actively working
> on that.

  Hi François,

  I think the proper solution should be for upstream sympy to not have
a copy of mpmath, or, somehow not let it conflict with a toplevel
mpmath. Otherwise, patching will be required. For now I am using this
one (with minor changes for 2010.1 and sage 4.4):
http://svn.mandriva.com/cgi-bin/viewvc.cgi/packages/cooker/sagemath/current/SOURCES/sage-4.4.4-sympy_mpmath.patch?view=markup
and forcing python-mpmath to be uninstalled if upgrading the sagemath package.

> Francois
>
> --

Paulo

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


Re: [sage-devel] ATLAS - proposal to allow a threaded build.

2010-07-16 Thread Carl Witty
On Fri, Jul 16, 2010 at 4:34 PM, Dr. David Kirkby
 wrote:
> How does this sound.
>
> 1) We add an environment variable SAGE_ATLAS_THREADS
> 2) If unset, then the behavior is unchanged, so we build an unthreaded
> ATLAS.
> 3) If set to "auto":
>
> $ export SAGE_ATLAS_THREADS=auto
>
> then we let ATLAS automatically determine the number of threads. (I think
> that is what ATLAS determines as the number of processors on your system.
> IIRC, on 't2.math' this was 128).
>
> 4) If set to an integer N,
>
> $ export SAGE_ATLAS_THREADS=8
>
> we use N (in this case 8) threads.

+1 for this plan.

Thanks for looking into this; I'm looking forward to seeing what ATLAS
does on my desktop.

Carl

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


[sage-devel] ATLAS - proposal to allow a threaded build.

2010-07-16 Thread Dr. David Kirkby
Currently, when ATLAS builds in Sage, it uses this option to the configure 
scrip, it used the option -t 0, which disables threading.


The comment in spkg-install-script says:

# -t 0: disable threading for now.

and we can see that actually happens.


   ../src/configure --prefix="$SAGE_LOCAL" 
--with-netlib-lapack="$SAGE_LOCAL"/lib/liblapack.a  \
-Si cputhrchk 0 -Fa alg -fPIC -t 0 -C if $FCOMPILER -b $bitwidth 
$SIMD_FLAGS



How does this sound.

1) We add an environment variable SAGE_ATLAS_THREADS
2) If unset, then the behavior is unchanged, so we build an unthreaded ATLAS.
3) If set to "auto":

$ export SAGE_ATLAS_THREADS=auto

then we let ATLAS automatically determine the number of threads. (I think that 
is what ATLAS determines as the number of processors on your system. IIRC, on 
't2.math' this was 128).


4) If set to an integer N,

$ export SAGE_ATLAS_THREADS=8

we use N (in this case 8) threads.

Does that sounds more logical than only letting an threaded ATLAS be built?


Dave

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


Re: [sage-devel] About mpmath and sympy

2010-07-16 Thread François Bissey
>   Hi,
> 
>   Newer sympy has a bundled copy of mpmath, what causes several
> problems in my sagemath package. I was in vacation during most of
> Mandriva 2010.1 freeze, and did not fully test the package for some
> time, but I am working on an update for it; basically an 's/import
> mpmath/import sympy.mpmath as mpmath/', but would like to know what
> would be the better approach. (just letting the code use both leads to
> SEGvs).
> 
>   The new sagemath package will conflict with
> python-mpmath-0.14-1mdv2010.1 (forcing it to be uninstalled), because
> the sympy is python-sympy-0.6.7-1mdv2010.1.
> 
Hi Paulo,

that will probably be a pain for us in gentoo as well. 
At the moment we are sticking with sympy-0.6.6 as 
sympy-0.6.7 gives us trouble. The gentoo philosophy
at this point will be to remove mpmath from sympy and
make it a requirement. But I haven't been actively working
on that.

Francois

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


[sage-devel] Re: undo function in notebook stuffed entirely

2010-07-16 Thread kcrisman
I can confirm that in 4.4.4 ALL revisions (there were 11, including
some from '1 day ago') of a worksheet I am working on are identical to
the current revision, which they definitely should not be!

This isn't exactly the same as Stan's issue, but almost certainly
related.  Stan, can you post which ticket is related to this (you
mention one below)?

I agree that this is very bad.  I am pretty sure there was a time
where the 'wasted space' was fixed but this didn't happen, but that
may have been before the switch to the sagenb package.

- kcrisman

On Jul 16, 10:38 am, Stan Schymanski  wrote:
> Dear all,
>
> There has been a post in April about problems with the undo function
> in the notebook and a ticket was created, but I have to report that
> the undo function is stuffed entirely both in sage 4.4.3 and 4.4.4.
> I just saved and closed a worksheet that was misbehaving and when I re-
> opened it, it was in the version of ages ago and the undo list is
> empty. The undo list is actually empty for the other notebooks as
> well, so I haven't only lost a day of work but I may be losing more.
> Is there a way to use the old notebook again, where it was working
> well, despite "wasting space"? This is a major regression in my eyes.
>
> Thanks for your help!
>
> Cheers,
> Stan

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


[sage-devel] About mpmath and sympy

2010-07-16 Thread Paulo César Pereira de Andrade
  Hi,

  Newer sympy has a bundled copy of mpmath, what causes several
problems in my sagemath package. I was in vacation during most of
Mandriva 2010.1 freeze, and did not fully test the package for some
time, but I am working on an update for it; basically an 's/import
mpmath/import sympy.mpmath as mpmath/', but would like to know what
would be the better approach. (just letting the code use both leads to
SEGvs).

  The new sagemath package will conflict with
python-mpmath-0.14-1mdv2010.1 (forcing it to be uninstalled), because
the sympy is python-sympy-0.6.7-1mdv2010.1.

Thanks,
Paulo

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


[sage-devel] Re: Fwd: Re: [R] Mathematica and R

2010-07-16 Thread kcrisman
Thanks! I replied to this in at least a preliminary way.  But he is
right that the easy-to-find documentation on many of the interfaces in
practical terms is pretty rudimentary.

- kcrisman

On Jul 16, 3:12 pm, "Dr. David Kirkby" 
wrote:
> I happened to notice this on r-help.
>
> Dave
>
>
>
>  Original Message 
> Subject: Re: [R] Mathematica and R
> Date: Fri, 16 Jul 2010 13:48:49 -0400
> From: David Bickel 
> To: r-h...@r-project.org
>
>   Hi Albyn,
>
> Thank you very much for the suggestion.
>
> I managed to install Sage on Windows (via a Linux VM), but I cannot find
> any documentation on how to use R from Sage. Maybe I should use the web
> interface of Sage to avoid having to install R on the VM.
>
> Best regards,
> David
>
> On 10-07-14 10:24, Albyn Jones wrote:
> > Take a look at Sage, which is an open source alternative.  It already
> > integrates R  (http://www.sagemath.org)
>

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


[sage-devel] Fwd: Re: [R] Mathematica and R

2010-07-16 Thread Dr. David Kirkby

I happened to notice this on r-help.

Dave


 Original Message 
Subject: Re: [R] Mathematica and R
Date: Fri, 16 Jul 2010 13:48:49 -0400
From: David Bickel 
To: r-h...@r-project.org

 Hi Albyn,

Thank you very much for the suggestion.

I managed to install Sage on Windows (via a Linux VM), but I cannot find
any documentation on how to use R from Sage. Maybe I should use the web
interface of Sage to avoid having to install R on the VM.

Best regards,
David


On 10-07-14 10:24, Albyn Jones wrote:

Take a look at Sage, which is an open source alternative.  It already
integrates R  (http://www.sagemath.org)

albyn

Quoting David Bickel :


What are some effective ways to leverage the strengths of R and
Mathematica for the analysis of a single data set?

More specifically, are there any functions that can assist with any
of the following?
1. Calling an R function from Mathematica.
2. Calling a Mathematica function from R.
3. Using XML or another reliable data format to pass vectors,
matrices, and/or lists from one environment to the other.

Any advice would be appreciated.

David

--
David R. Bickel, PhD
Associate Professor
Ottawa Institute of Systems Biology
Biochem., Micro. and I. Department
Mathematics and Statistics Department
University of Ottawa
451 Smyth Road
Ottawa, Ontario K1H 8M5

http://www.statomics.com

Office Tel: (613) 562-5800 ext. 8670
Office Fax: (613) 562-5185

__
r-h...@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide
http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.






__
r-h...@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

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


Re: [sage-devel] Re: cephes is seriously broken

2010-07-16 Thread Robert Bradshaw
On Fri, Jul 16, 2010 at 3:30 AM, Dr. David Kirkby
 wrote:
> On 07/16/10 10:42 AM, Peter Jeremy wrote:
>>
>> On 2010-Jul-16 10:48:15 +0200, William Stein  wrote:
>>>
>>> worked".  This wouldn't be likely with Microsoft's own compilers...
>>> For starters, the Singular developers don't work with those compilers,
>>> so the Singular devs will make all kinds of code changes, which would
>>> then have to be ported/fixed.
>>
>> As has been discussed previously, this effort is worthwhile in any
>> case.  Firstly, gcc does not generate especially good SPARCv9 or iA64
>> code - being able to use vendor compilers is likely to provide a boost
>> to Sage performance on those platforms.

The vast majority of people, by far, do not use SPARCv9 or iA64, and
though we shouldn't abandon support for them I'd say that getting a
Windows version up and running at all (which was the point of cephes
that started this thread) is vastly more important than optimized code
on rare platforms (though for those with different hardware and
special compilers, it's probably worth their time to try to make the
most of their resources, and we're certainly not throwing up any
roadblocks in that direction).

>> Secondly, the different checks
>> performed by different compilers are likely to turn up in Sage code and
>> correcting them will improve the reliability and robustness of Sage.
>>
>
> I agree with this very much. I think William see evidence of how the Sun
> compiler (which was being called by mistake), found two serious bugs in
> c_lib.
>
> http://trac.sagemath.org/sage_trac/ticket/6595
>
> Unfortunately, so much of the code in Sage is written in a GNU dialect of
> C/C++ and not C/C++, that building Sage with native compilers would be very
> difficult.

Yep. Apparently some coders find value in using the GNU dialects
rather than sticking to the standards. (Or it could be in part due to
ignorance, much of this code requires a deep math background rather
than a deep engineering background to write). This does not negate the
value of being able to compile on a variety of compilers, but we take
what we're given.

Currently, the (huge) problem is that there's no Windows port of Sage,
and since most upstreams components have better support for Cygwin
than the other Windows options (whether incidentally or by design).
Once we have a stable and maintainable Cygwin port those interested
can look at porting to other Windows platforms (including the
necessary upstream work).

- Robert

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


Re: [sage-devel] Should we create a 'reversed' deps file for test purposes?

2010-07-16 Thread Robert Bradshaw
On Thu, Jul 15, 2010 at 9:55 AM,   wrote:
> Currently the spkg/standard/deps file has the dependancies for Sage listed
> in alphabetical order. I suspect that might mean for serial builds, if there
> are no stated dependancies, things build in alphabetical order.
>
> all: $(BASE) \
> $(INST)/$(ATLAS) \
> $(INST)/$(BLAS) \
> $(INST)/$(BOEHM_GC) \
> $(INST)/$(BOOST_CROPPED) \
> $(INST)/$(CDDLIB) \
> $(INST)/$(CEPHES) \
> 
> $(INST)/$(TWISTED) \
> $(INST)/$(WEAVE) \
> $(INST)/$(ZLIB) \
> $(INST)/$(ZNPOLY) \
> $(INST)/$(ZODB)
>
>
> If we created a deps file with the dependencies list the other way, we might
> be likely to induce a very different build order. That could be useful for
> testing purposes, to see if there are hidden depenancies.
>
> I'm not however sure if my logic is flawed here. I would have thought that
> for serial builds, the order would have been dependent on the order they are
> listed is the 'deps' file, unless there are stated dependencies which stop
> that.

That's an interesting idea, and worth trying at least. The actual
order for non-dependent packages probably depends on some arbitrary
internal format, but that might be influenced by the ordering in the
makefile.

- Robert

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


[sage-devel] Re: cephes is seriously broken

2010-07-16 Thread Dima Pasechnik
there are many major Sage components that do not build natively on
Windows, e.g. GAP,
and where native ports are not on roadmaps of the corresponding
development teams.
Other platforms might have a better chance, e.g. GAP is very compiler-
tolerant (as there is no C++ there).

Dima

On Jul 16, 10:42 am, Peter Jeremy  wrote:
> On 2010-Jul-16 10:48:15 +0200, William Stein  wrote:
>
> >worked".  This wouldn't be likely with Microsoft's own compilers...
> >For starters, the Singular developers don't work with those compilers,
> >so the Singular devs will make all kinds of code changes, which would
> >then have to be ported/fixed.
>
> As has been discussed previously, this effort is worthwhile in any
> case.  Firstly, gcc does not generate especially good SPARCv9 or iA64
> code - being able to use vendor compilers is likely to provide a boost
> to Sage performance on those platforms.  Secondly, the different checks
> performed by different compilers are likely to turn up in Sage code and
> correcting them will improve the reliability and robustness of Sage.
>
> --
> Peter Jeremy
>
>  application_pgp-signature_part
> < 1KViewDownload

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


Re: [sage-devel] spkg-check

2010-07-16 Thread Dr. David Kirkby

On 07/16/10 03:03 PM, Sergey Bochkanov wrote:

Hello, Dr..

You wrote 16 июля 2010 г., 17:37:25:

So if spkg-check is executed, I can be sure that spkg was successfully
installed into system?

Not exactly, as some packages unfortunately ignore errors, so if the package
fails to install, you will not know it.


I  am talking about my own package, so I know that its author at least
tried to handle all errors during install :)


Yes, I had not realised you were talking of your own package. If you recall, I 
looked at that, and found it was ok. The tests passed on a system or two I 
checked it on. You did have some self-tests, though I remarked the output was 
only shown at the end, not after each test. You said it was a problem with 
flusing stdout and it behaved differently on Linux to Solaris.



Not  all  packages  have spkg-check files - in fact, the majority do
not.  A list of the packages which have them missing can be found on
this ticket. http://trac.sagemath.org/sage_trac/ticket/9281


Looks  like  that  spkg-check  is  not  very  popular  way  of testing
packages.


That's true, though there is an interest in improving that situation by a few 
people at least.


If you look at the ticket I created listing the packages which don't have 
spkg-check files, you will see several others have added their usernames to 'cc' 
field. John Palmieri has done some work on this


http://trac.sagemath.org/sage_trac/ticket/9352

I fixed a couple recently

http://trac.sagemath.org/sage_trac/ticket/9277
http://trac.sagemath.org/sage_trac/ticket/9286
http://trac.sagemath.org/sage_trac/ticket/9309
http://trac.sagemath.org/sage_trac/ticket/9308

and have created tickets for fixing a couple more

http://trac.sagemath.org/sage_trac/ticket/9311


Many  packages  rely  on  doctests.




It leads me to the next
question.

I  work on test suite for ALGLIB spkg. Previous release contained only
computational  core  tests,  now  I  want  to add Python-C integration
tests. These tests will be integrated into spkg-check. So testing will
be done as follows:
1) spkg-check is called
2) computational core (external shared library) is tested
3) if failed, testing is stopped
4) communication between core and Python is tested

Step  (4) is just execution of very large Python script which tries to
call different ALGLIB functions and to check their result. This script
is  automatically generated from formal description - it will allow me
to use these tests later in other programming languages.

It  is  also  possible  to automatically generate doctests from formal
description used to generate spkg-check.


I'm impressed. Sage needs more people like you, who take testing a bit more 
seriously.



So I have three options:
a) to test ALGLIB from spkg-check only
b) to generate doctests and to test ALGLIB using doctests only
c) to use BOTH spkg-check and doctests

But what should I choose in this situation?


Many packages are checked by both spkg-check and doctests. If you take a package 
like R for instance, the spkg-check will run R's testsuite, whereas the doctests 
will only confirm that R can be called from Sage - there is very little actual 
testing done of R.


Dave

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


Re: [sage-devel] Re: Unreasonable docfails in symbolic/random_tests.py

2010-07-16 Thread Andrey Novoseltsev
Thank you!!!

Andrey

On Thu, Jul 15, 2010 at 10:36 PM, Carl Witty  wrote:
> On Thu, Jul 15, 2010 at 1:38 PM, Andrey Novoseltsev  
> wrote:
>> Hi Carl,
>>
>> For example this installation of sage-4.5.alpha1
>>
>> novos...@sage:/scratch/novoselt/sage-4.5.alpha1/devel/sage-main$ hg
>> qapplied
>> trac_9502_basis_parent_bug_in_FreeModule.patch
>> trac_9128-sphinx_links_all-fh.patch
>> trac_9128-intersphinx_python_database-fh.patch
>> trac_9188_fix_facet_normal.patch
>> trac_9188_fix_facet_normal_reviewer.patch
>> trac_9062_add_support_for_toric_lattices.patch
>> trac_9062-cmp_fix.2.patch
>> trac_8986_add_support_for_convex_rational_polyhedral_cones.patch
>> trac_8986_cmp_fix.patch
>> trac_8987_add_support_for_rational_polyhedral_fans.patch
>> trac_8987_add_enhanced_cones_and_fans.patch
>> trac_8987_review_changes.patch
>> trac_8987_repr_changes.patch
>> trac_8987_cmp_fix.patch
>> trac_8988_add_support_for_toric_varieties.patch
>>
>> shows two broken doctests in symbolic/random_tests. Moreover, it seems
>> that my doctest patch does not fix one of the issues anymore! It will
>> be very very good if you could fix this issue, as I have no idea
>> what's going on...
>
> Thanks, that's exactly what I needed to track down the issue.  Turns
> out it was a bug in random_tests.py.  (I was inadvertently depending
> on the order of the output of .values() on a dict, which is a Bad
> Idea.  The question isn't why it broke, it's why did it ever work.)
>
> There's a patch up at #9514.
>
> Carl
>
> --
> 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
>

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


Re: [sage-devel] spkg-check

2010-07-16 Thread Sergey Bochkanov
Hello, Dr..

You wrote 16 июля 2010 г., 17:37:25:
>> So if spkg-check is executed, I can be sure that spkg was successfully
>> installed into system?
> Not exactly, as some packages unfortunately ignore errors, so if the package
> fails to install, you will not know it.

I  am talking about my own package, so I know that its author at least
tried to handle all errors during install :)

> Not  all  packages  have spkg-check files - in fact, the majority do
> not.  A list of the packages which have them missing can be found on
> this ticket. http://trac.sagemath.org/sage_trac/ticket/9281

Looks  like  that  spkg-check  is  not  very  popular  way  of testing
packages.  Many  packages  rely  on  doctests. It leads me to the next
question.

I  work on test suite for ALGLIB spkg. Previous release contained only
computational  core  tests,  now  I  want  to add Python-C integration
tests. These tests will be integrated into spkg-check. So testing will
be done as follows:
1) spkg-check is called
2) computational core (external shared library) is tested
3) if failed, testing is stopped
4) communication between core and Python is tested

Step  (4) is just execution of very large Python script which tries to
call different ALGLIB functions and to check their result. This script
is  automatically generated from formal description - it will allow me
to use these tests later in other programming languages.

It  is  also  possible  to automatically generate doctests from formal
description used to generate spkg-check. So I have three options:
a) to test ALGLIB from spkg-check only
b) to generate doctests and to test ALGLIB using doctests only
c) to use BOTH spkg-check and doctests

But what should I choose in this situation?

-- 
With best regards,
 Sergey  mailto:sergey.bochka...@alglib.net

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


Re: [sage-devel] spkg-check

2010-07-16 Thread Dr. David Kirkby

On 07/16/10 02:32 PM, Sergey Bochkanov wrote:

Hello, William.

You wrote 16 июля 2010 г., 17:12:53:

I have a question about spkg-check file. When does it executed - after
spkg-install call or independently of it?

After.


So if spkg-check is executed, I can be sure that spkg was successfully
installed into system?


Not exactly, as some packages unfortunately ignore errors, so if the package 
fails to install, you will not know it. But in general, if the package does not 
install, the 'make' process will exit immediately and Sage will stop building. 
spkg-check will not be run in that case.


Not all packages have spkg-check files - in fact, the majority do not. A list of 
the packages which have them missing can be found on this ticket.


http://trac.sagemath.org/sage_trac/ticket/9281


Dave


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


Re: [sage-devel] spkg-check

2010-07-16 Thread Sergey Bochkanov
Hello, William.

You wrote 16 июля 2010 г., 17:12:53:
>> I have a question about spkg-check file. When does it executed - after
>> spkg-install call or independently of it?
> After.

So if spkg-check is executed, I can be sure that spkg was successfully
installed into system?

-- 
With best regards,
 Sergey  mailto:sergey.bochka...@alglib.net

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


Re: [sage-devel] spkg-check

2010-07-16 Thread William Stein
On Fri, Jul 16, 2010 at 2:39 PM, Sergey Bochkanov
 wrote:
> Hello,
>
> I have a question about spkg-check file. When does it executed - after
> spkg-install call or independently of it?

After.

>
> --
> With best regards,
>  Sergey                          mailto:sergey.bochka...@alglib.net
>
> --
> 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
>



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

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


Re: [sage-devel] spkg-check

2010-07-16 Thread Dr. David Kirkby

On 07/16/10 01:39 PM, Sergey Bochkanov wrote:

Hello,

I have a question about spkg-check file. When does it executed - after
spkg-install call or independently of it?



Only if the environment variable  SAGE_CHECK is set to "yes". In other words, by 
default spkg-check does not run.


Personally, I feel it would useful if some files were just checked every time, 
when the time to test them is very small. GLPK was added recently, and on my 
machine it takes less than 10 s to check it. So I feel that's a very small 
fraction of the time to build Sage, so it should be checked.


Dave

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


[sage-devel] Re: multivariate polynomial multiplication, division, GCD, factorization

2010-07-16 Thread parisse
> I'm *REALLY*, really, really confused about which tarball is the
> source code for the
> latest version of giac.  Just to clarify, please send me a direct link
> in email here, please.
>

Should be there
http://www-fourier.ujf-grenoble.fr/~parisse/giac/giac_unstable.tgz
or there
ftp://ftp-fourier.ujf-grenoble.fr/xcas/giac_unstable.tgz
with the latest changes.
I realize I did not update the http link since 3 months, should be up
to date now.
On x64, you should run
export CXXFLAGS='-O2 -DSMARTPTR64 -D_I386_ '
before calling configure to get the best performances

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


[sage-devel] Re: IDE's; science/engineering

2010-07-16 Thread dagss
On Jul 11, 12:20 pm, William Stein  wrote:
> 2. Sage at EuroScipy:
>
> Another thing -- though most talks mention Cython, not one single talk
> given about actual engineers/scientists doing work even mentioned Sage
> -- and there were over 30 talks.  Perhaps there is no penetration at
> all of Sage into scientific computing, at least in Europe.  Perhaps
> this will change in the next few years, given that NSF looks highly
> likely to fund this NSF granthttp://wstein.org/grants/compmath09/
>
> Sage was only mentioned in the first keynote by Langtangen, in which
> he explained that installing Python for his students is very hard.
> His personal solution -- force the students to install Ubuntu, either
> natively or in a Virtual Machine.  Full 
> stop.http://picasaweb.google.com/wstein/20100710EuroscipyDay1#549240022431...
> He made some (funny) jokes about being a dictator.
>
> I personally disagree with his suggested "solution".   Maple, Matlab,
> Mathematica do better, and so can we.

I'm not sure if he meant it is a good solution, just an adequate
solution that works *now*. Here's some reasons Sage wouldn't work for
Langtangen (according to his talk):

 - He mentioned several Python's being around causing a mess as a
problem, Sage adds to this problem. When using a clean VirtualBox,
there is guaranteed to only be one Python installed and available,
which solved his biggest problem.
 - LD_LIBRARY_PATH means people must either mess big-time with
environment variables, or start using "sage -python" and "sage -
ipython" (in which case all the examples about using Python from the
internet, scripts with shebangs "#!/usr/bin/env python" etc. stops
working).

I'm NOT saying Sage can or should do anything about it, just
commenting on the situation. I personally think Langtangen is much
better off with VirtualBox than Sage at the time being.

I personally hope David C.'s efforts will lead somewhere where the
science/engineering packaging distribution mess is fixed.

BTW, the problem one is trying to solve is much more complex than what
MATLAB and Mathematica is dealing with -- I fully expect that whatever
MATLAB does would break down under the weight of hundreds of special
purpose, openly-developed and often-changing packages as well!

(I know Ondrej claims the SPKG system is perfect also for engineers,
but I see the FEMHub project as a direct contradiction to that -- what
if I want a package from both FEMHub and Sage? It doesn't work easily,
out of the box *now*.)

(I was unsure whether this should go here or sage-flame, but decided
on here...I hope this doesn't end up in a long discussion.)

Dag Sverre

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


[sage-devel] spkg-check

2010-07-16 Thread Sergey Bochkanov
Hello,

I have a question about spkg-check file. When does it executed - after
spkg-install call or independently of it?

-- 
With best regards,
 Sergey  mailto:sergey.bochka...@alglib.net

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


Re: [sage-devel] Re: cephes is seriously broken

2010-07-16 Thread Dr. David Kirkby

On 07/16/10 10:42 AM, Peter Jeremy wrote:

On 2010-Jul-16 10:48:15 +0200, William Stein  wrote:

worked".  This wouldn't be likely with Microsoft's own compilers...
For starters, the Singular developers don't work with those compilers,
so the Singular devs will make all kinds of code changes, which would
then have to be ported/fixed.


As has been discussed previously, this effort is worthwhile in any
case.  Firstly, gcc does not generate especially good SPARCv9 or iA64
code - being able to use vendor compilers is likely to provide a boost
to Sage performance on those platforms.  Secondly, the different checks
performed by different compilers are likely to turn up in Sage code and
correcting them will improve the reliability and robustness of Sage.



I agree with this very much. I think William see evidence of how the Sun 
compiler (which was being called by mistake), found two serious bugs in c_lib.


http://trac.sagemath.org/sage_trac/ticket/6595

Unfortunately, so much of the code in Sage is written in a GNU dialect of C/C++ 
and not C/C++, that building Sage with native compilers would be very difficult. 
Even getting the compilers to be called is difficult, as so many bits of Sage 
ignore $CC, $CXX etc.


Here's just a few I can bugs I can quickly find - I rather gave up collecting a 
list of them, there are just so many


http://trac.sagemath.org/sage_trac/ticket/7074
http://trac.sagemath.org/sage_trac/ticket/7073
http://trac.sagemath.org/sage_trac/ticket/7072
http://trac.sagemath.org/sage_trac/ticket/7071
http://trac.sagemath.org/sage_trac/ticket/7069
http://trac.sagemath.org/sage_trac/ticket/7068
http://trac.sagemath.org/sage_trac/ticket/7066
http://trac.sagemath.org/sage_trac/ticket/7065
http://trac.sagemath.org/sage_trac/ticket/7062 # Probably fixed now, as the ECL 
developer is very good and I reported this.

http://trac.sagemath.org/sage_trac/ticket/7048
http://trac.sagemath.org/sage_trac/ticket/7047
http://trac.sagemath.org/sage_trac/ticket/7044
http://trac.sagemath.org/sage_trac/ticket/7043
http://trac.sagemath.org/sage_trac/ticket/7039
http://trac.sagemath.org/sage_trac/ticket/7038
http://trac.sagemath.org/sage_trac/ticket/7035
http://trac.sagemath.org/sage_trac/ticket/7031
http://trac.sagemath.org/sage_trac/ticket/7028
http://trac.sagemath.org/sage_trac/ticket/7027
Dave

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


Re: [sage-devel] Re: cephes is seriously broken

2010-07-16 Thread Peter Jeremy
On 2010-Jul-16 10:48:15 +0200, William Stein  wrote:
>worked".  This wouldn't be likely with Microsoft's own compilers...
>For starters, the Singular developers don't work with those compilers,
>so the Singular devs will make all kinds of code changes, which would
>then have to be ported/fixed.

As has been discussed previously, this effort is worthwhile in any
case.  Firstly, gcc does not generate especially good SPARCv9 or iA64
code - being able to use vendor compilers is likely to provide a boost
to Sage performance on those platforms.  Secondly, the different checks
performed by different compilers are likely to turn up in Sage code and
correcting them will improve the reliability and robustness of Sage.

-- 
Peter Jeremy


pgpgRHwZaZtOc.pgp
Description: PGP signature


[sage-devel] Re: include PyCryptoPlus?

2010-07-16 Thread Martin Albrecht
I've opened a ticket at

   http://trac.sagemath.org/sage_trac/ticket/9515

about creating an optional PyCryptoPlus package.

Cheers,
Martin

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


Re: [sage-devel] Re: cephes is seriously broken

2010-07-16 Thread William Stein
On Fri, Jul 16, 2010 at 9:45 AM, Georg S. Weber
 wrote:
>
>
> On 15 Jul., 14:17, Francesco Biscani  wrote:
>> [possibly OT] Out of curiosity, what was the rationale for going for
>> SAGE on Cygwin instead of MinGW?
>>
>> Cheers,
>>
>>  Francesco.
>
> AFAIR,
>
> only the Cygwin environment is able to provide pty's (pseudo tty's)
> under Windows, which are needed for the pexpect interfaces to work.

It is technically possible to do something like this in Windows (non Cygwin)
using the console API.   I had a student do a mock-up of this, and it worked,
but wasn't so robust/impressive.

> (These interfaces connect the Sage library with the functionality of
> e.g. Maxima, GAP, ...)
> Cygwin also provides a bash environment, with the ability to fork,
> which is rare under Windows.

rare = impossible, I think.   And yes, this fork capability of cygwin
is hugely relevant for Sage.

>  (MinGW sometimes is accompagnied by MSys
> for this purpose, but then, MSys is a descendant of Cygwin.)
> Again, Sage currently depends on this (bash scripts, ...).

All the pexpect interfaces use fork to get going, by the way.

> And then there is signal handling (Cython _sig_on, _sig_off), where
> Cygwin provides nice abstraction layers, so the current mechanisms
> used by *nix-ish Sage nicely carry over, resp. no porting efforts are
> needed (I think there are two "Windows processes" used for each
> "Cygwin process", just to be able to deal with this signalling stuff).
>
> A "native" Windows port is definitely wanted, and on the roadmap for
> Sage. But that's still a long way to go (rework of pexpect interfaces,
> etc.) ...

A "native" windows port used to be on the roadmap. It's definitely not
on my roadmap anymore.

Just to give a sense of how I'm happier with the Cygwin version of
Sage, yesterday I logged in via ssh to one of my winxp cygwin
machines, built the brand new Singular spkg (that Martin Albrecht just
posted), then built all the relevant changes to the Sage library
needed to use this new version of Singular... and it all "just
worked".  This wouldn't be likely with Microsoft's own compilers...
For starters, the Singular developers don't work with those compilers,
so the Singular devs will make all kinds of code changes, which would
then have to be ported/fixed.

 -- William

>
>
> Cheers,
> Georg
>
> --
> 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
>



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

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


Re: [sage-devel] Re: Re: [sage-release] Re: sage-4.5.rc1 released

2010-07-16 Thread Robert Miller
On Thu, Jul 15, 2010 at 10:33 PM, Robert Miller  wrote:
> resolved, but since I've already got the build going on taurus, I
> won't stop it.

All tests pass on taurus as well!


-- 
Robert L. Miller
http://www.rlmiller.org/

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


[sage-devel] Re: cephes is seriously broken

2010-07-16 Thread Georg S. Weber


On 15 Jul., 14:17, Francesco Biscani  wrote:
> [possibly OT] Out of curiosity, what was the rationale for going for
> SAGE on Cygwin instead of MinGW?
>
> Cheers,
>
>  Francesco.

AFAIR,

only the Cygwin environment is able to provide pty's (pseudo tty's)
under Windows, which are needed for the pexpect interfaces to work.
(These interfaces connect the Sage library with the functionality of
e.g. Maxima, GAP, ...)
Cygwin also provides a bash environment, with the ability to fork,
which is rare under Windows. (MinGW sometimes is accompagnied by MSys
for this purpose, but then, MSys is a descendant of Cygwin.)
Again, Sage currently depends on this (bash scripts, ...).
And then there is signal handling (Cython _sig_on, _sig_off), where
Cygwin provides nice abstraction layers, so the current mechanisms
used by *nix-ish Sage nicely carry over, resp. no porting efforts are
needed (I think there are two "Windows processes" used for each
"Cygwin process", just to be able to deal with this signalling stuff).

A "native" Windows port is definitely wanted, and on the roadmap for
Sage. But that's still a long way to go (rework of pexpect interfaces,
etc.) ...


Cheers,
Georg

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