[HN Gopher] Mathics 7.0 - Open-source alternative to Mathematica
___________________________________________________________________
Mathics 7.0 - Open-source alternative to Mathematica
Author : adius
Score : 128 points
Date : 2024-12-07 12:34 UTC (10 hours ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| ktpsns wrote:
| I watch this project since a few years and they make good
| progress. To whoever is interested in open source Computer
| Algebra Systems, there are of course plenty of more mature
| solutions. Classical ones such as GNU Octave or Maxima but also
| "modern ones" such as SAGEmath, Symbolics.jl or sympy. In
| particular, there is a broad range from symbolic libraries such
| as GiNaC up to "battery included" IDEs like SAGEmath. The
| community is vivid and amazing, for instance SAGEmath basically
| pioneered the web notebook interface which today brought us
| Jupyter in all its fashions.
|
| I personally love the LISPy style of Mathematica (MMA) but of
| course it is not the (only) the core which makes MMA so powerful
| but the super large library which has not only instance industry-
| leading solutions for basic topics such as symbolic integration,
| 2D/3D graphics or finite element methods but also a plethora of
| special purpose domains such as bioinformatics. I guess Mathics
| has a good clone of the core but lacks, of course, all the
| libraries. It is, by the way, the same logic as with Matlab and
| its many "toolkits" compared to the numpy clone. However, the
| python movement brought many novel codes into the numpy world
| which no more work on Matlab.
| anthk wrote:
| On Lisp you can jump into Common Lisp from Maxima in a breeze.
| Better with SBCL because of performance.
| ethernot wrote:
| But Maxima, which is horrifying buggy.
| sourcepluck wrote:
| Hmm, I was using it fairly heavily while going through a
| book which required loads of messing with graphs last year
| for a month maybe and I don't remember it acting up...
| Perhaps I got lucky? Is it known to be buggy, in general?
| ethernot wrote:
| Yes it's terribly buggy. Incorrect answers sometimes
| depending on release versions and solve gets stuck all
| the time. I tend to use Xcas/GIAC instead where I can.
| Also bundled on my calculator (HP Prime).
|
| It's so bad that the university I "loosely associate"
| with have their own patched version to fix a load of
| problems with it.
| anthk wrote:
| WxMaxima? For sure. Plain Maxima/XMaxima/Maxima.el it's
| megastable.
| ethernot wrote:
| Stable yes. Buggy yes. There are all sorts of problems it
| gets stuck on. solve() is terrible.
| vector_spaces wrote:
| Maybe I'm mistaken, but I don't think of Octave, Matlab or
| numpy as operating in the same space as a computer algebra
| system -- to me, those are all numerics oriented
| languages/libraries, used to obtain numerical solutions to
| problems vs exact symbolic expressions. They complement each
| other and are often used together, like Mathematica and mathics
| seem to support both paradigms, but they aren't the same.
| klysm wrote:
| I generally agree, but Matlab does have algebraic
| capabilities
| fph wrote:
| Matlab's symbolic toolbox is actually a wrapper around
| another proprietary CAS, Mupad.
| 3abiton wrote:
| These were my thoughts too. The use case for Mathematica is
| extremely different than Octave.
| williamstein wrote:
| When you go into battle to solve a computational mathematics
| problem, the problem sometimes doesn't care about these
| boundaries. E.g., you might think that you're solving a
| problem in "computer algebra", but a sufficiently fast
| solution might end up involving numerical linear algebra in
| surprising ways. (E.g., enumerating elliptic curves over the
| rational numbers is reduced to exact linear algebra because
| of a Wiles work on Fermat's last theorem, and often exact
| linear algebra can be done via clever tricks much more
| efficiently using floating point matrices, which happen to be
| insanely fast to work with due to GPU's...). It's thus
| valuable, at least for research, to have large mathematical
| software systems that span these boundaries.
| nxobject wrote:
| You're right about the progress they've made: to me, this
| project's a really wonderful example of quietly chipping away
| at a project you love. I remember about... five years ago?...
| when the project was first launched, and I thought "hmm, that's
| nice - they've really nailed the symbolic evaluation engine,
| but let's see what happens". I'll have to remember their
| example every time I feel like starting a new project instead
| of chipping away at an old one...
| deknos wrote:
| why do i think this will be integrated into sagemath? :D
| williamstein wrote:
| I'm not aware of any real push to include Mathics in sagemath.
| I speculate it's because SageMath is mainly developed by
| research mathematicians and cryptographers, so performance is
| often a primary concern when evaluating components for
| inclusion. One of the reasons SageMath is the largest Cython
| project is because Cython makes it possible to utilize fast
| C/C++ libraries from Sage.
|
| I have the impression that Mathics is currently not seriously
| concerned with performance. E.g., try this little
| microbenchmark in Mathics: "AbsoluteTiming[Sum[i, {i, 1,
| 100000}]]" or read their roadmap. This is fine -- there are
| many interesting applications of the Mathematica programming
| language where performance isn't important, e.g., carefully
| stepping through some symbolic operations with expressions.
| However, for Sage the motivation of most developers is cutting
| edge research math, and for that, performance is almost always
| very important. Performance is why Sage also implements a lot
| of similar functionality to Sympy rather than just using sympy
| for that functionality -- since sympy can be relatively slow
| due to their priority to be easy to install, which is
| definitely not a priority for SageMath.
|
| The mission statement for SageMath is to be a viable
| alternative to Mathematica, Matlab, Magma, and Maple, but I
| never meant that to mean being a clone (e.g., directly running
| Mathematica code), but instead just an alternative in the sense
| that it can support research built on open source mathematical
| software that might otherwise be done with those closed source
| programs.
| 1R053 wrote:
| one of the annoying things about Mathematica is that all
| functions are crammed into the same namespace and that there is
| no overloading with different parameterization options...
| LegionMammal978 wrote:
| What do you mean by overloading? Functions can easily have
| different behavior with different argument counts (e.g., 2- vs.
| 3-argument Fold), and they can have any number of options
| (e.g., Graphics, Graphics3D, Solve, Import/Export, etc.). The
| only big redundancy I can think of is the various Plot
| functions.
| WillyWonkaJr wrote:
| If you only want individual use, Wolfram Cloud is free to use. I
| think files delete after 30 days or something. Also the Wolfram
| Engine is a free way to use Mathematica via command line. Hey,
| its something...
| Iwan-Zotow wrote:
| With WLJS on top of Wolfram Engine its a blast
| topspin wrote:
| You may also buy a Raspberry Pi which comes with a Mathematica
| license.
| bmitc wrote:
| Software engineers will do anything to not pay for software.
| adalacelove wrote:
| I have a Mathematica license and at the same time find this
| project quite cool (and I'm a SW engineer). I would be
| surprised if mathics developers are not Mathematica users.
| xigoi wrote:
| It's not about the price, but about the freedom.
___________________________________________________________________
(page generated 2024-12-07 23:00 UTC)