On 22 July 2012 06:51, William Stein <[email protected]> wrote: > On Sat, Jul 21, 2012 at 3:21 PM, Dr. David Kirkby > <[email protected]> wrote: >> If I want to install Mathematica on Linux, one just buys a copy (ok, "just" >> might mean take out a big loan), then install it. There is not a binary for >> Ubuntu, another binary for Debian etc.
>> I wonder if WRI use some sort of intelligent installation, which detects the >> system and installs the right parts for that. > The remarks you make above are also definitely true with Magma as > well. There is one enormous difference between Sage and > Mathematica/Magma, which is that the architecture of Sage is > significantly more complicated (some might say "bloated") than that of > Mathematica or Magma. Sage is much more like a Linux distribution > (with many different programs written by different groups being > orchestrated together to get work done) than a single unified program > written by one group. For example, Magma is a few million lines of C > code plus a few hundred thousand lines of code written in the Magma > language (and Mathematica is probably similar). With Magma, they > simply statically link all that C code I've not done any extensive investigation, but certainly a large static library is *not* the approach taken by Wolfram Research with Mathematica. I done the "large static library" thing myself 20 years ago, but it is not a very memory efficient way of doing things, and one I would not do now. Instead Mathematica has a number of dynamic libraries, and includes libraries like ATLAS, SQlite and others which I see in Sage too. > Such an approach with Sage is completely impossible at this point. > When you run Magma (or Mathematica), you run a single program (plus > with Mathematica a GUI). When you run Sage, you could -- all in a > single command line session -- easily launch dozens of separate > executables, build some shared object libraries from source, link them > in at runtime, etc. I'm not saying you are wrong, but perhaps attemping it would make for a project for a computer science undergraduate. He/she would learn about Linux, and may come up with a way of doing something that you had not thought of. I currently have an antenna project at work, where I have got some work done, but have got rather stuck. I now have a more junior engineer looking at it for me. (She has a masters degree, not a Ph.D. and is 20 years younger than me). Whilst I'm giving her general advice on antennas and the simulation software we use, I have made a decision not to get share my thoughts too much about the issues of this antenna, and let her do her own research. She might come to the same conclusion that the antenna design under consideration as me, but she might not. Either way, she will learn something, be able to report her results, and the outcome might be more beneficial than I think. Dave > -- William -- -- To post to this group, send an email to [email protected] To unsubscribe from this group, send an email to [email protected] For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org
