
Mathics - A free, light-weight alternative to Mathematica - ColinWright
http://www.mathics.org/index.html
======
nswanberg
As others have pointed out, Mathics is missing features relative to
Mathematica, so it is an alternative provided you can work within Mathics'
subset of features. So if you are doing anything but tinkering it is still
best to buy Mathematica.

But Mathics is great for exploring the concepts in the Mathematica programming
language, a language that does not get the attention it deserves. If you are
not familiar with Mathematica as a language and and are curious, see this
comparison of Mathematica with other programming languages such as C, APL, and
Lisp, from the first edition of the Mathematica book:
<http://reference.wolfram.com/legacy/v1/contents/4.2.html> (this fourth
section was dropped from the second edition and beyond).

~~~
phponrails
Last time I checked Wolfram wasnt even hiring. . . . . . . Why bother learning
Mathematica or writing your own free version i mean seriously? There are
perfectly good Javascript libraries for doing whatever "math" stuff you feel
like burying your nose in and another thing. . . . It's actually impossible to
write a computer program that will prove anything significant. Turing figured
that out like 80 years ago, get a clue morans

~~~
rootedbox
I would suggest not to choose languages based off of who's hiring.. that being
said.. Wolfram is always hiring..

Mathematica's language / environment is very effective at rapid prototyping
math, computation, and physics applications... Thats why people use it.

~~~
jlgreco
He's a troll rapidly on his way to a hellbanning, don't waste your breath.

------
lispython
This topic already mentioned on HN before
<http://news.ycombinator.com/item?id=4066826>

And an interesting point is that, the core developer of Mathics is also a
Kernel Developer at Wolfram Research. Jan Pöschko's website
<http://www.poeschko.com/>

How could he build a free product compete with his company's product?

~~~
to3m
Jan Pöschko's website (it's at <http://www.poeschko.com/>) explains how he
squares working on Mathics and Mathematica.

~~~
justincormack
It says he no longer works on Mathics since being hired by Wolfram. Alas often
a way to try to weakene open source competition...

~~~
to3m
Yes, my post was a slightly cheeky way of pointing out that the answer is in
the page linked to by the very post that poses the question :)

As for weakening free competition, that's plausible, though I think it more
likely that the chap was hired on the basis of his work than as a strategic
move. Mathematica seems pretty entrenched and comprehensive (though I do admit
that it's not something I've used a great deal), and probably as impervious to
attack from open source equivalents as is Excel.

(While MS seems currently troubled, and I bet they're finding it harder and
harder to persuade people to upgrade to Office each year, Excel's position
looks pretty unassailable.)

------
Aardwolf
Why use the Mathematica syntax, and not a better one? It's rather annoying
syntax, Matlab and Maple are much better for this. Mathematicians don't use
square brackets for functions, most programming languages don't either, but
Mathematica, a mathematics language ffs, does. And sin and cos with capitals,
meh.

~~~
jfarmer
Any mathematician will agree: mathematics is invariant under change of
notation.

~~~
sprash
But sometimes the right notation can make things simpler and easier to
understand. (e.g. Einsteins Four-Vectors)

------
willscott
I am an avid Mathematica user. Not because I need to evaluate that much math,
but because I really like its wysiwyg notebook structure for note-taking. It's
great for keeping up with lectures and including decent looking equations and
tables when they come up (which is fairly often in technical classes). The
export to latex is a nice added bonus.

As far as I know, there aren't great alternatives to the Mathematica front end
- I'd love to be proven wrong, through.

~~~
gammarator
The ipython notebook is rapidly moving in that direction. See
<http://nbviewer.ipython.org/> for some examples. It can even embed R, ruby,
bash, and Perl code.

~~~
carlob
Personally I'm looking forward to start playing with this:
[http://reference.wolfram.com/mathematica/RLink/guide/RLink.h...](http://reference.wolfram.com/mathematica/RLink/guide/RLink.html)

~~~
lshifr
If you do, make sure to read this discussion:
[http://mathematica.stackexchange.com/questions/16657/special...](http://mathematica.stackexchange.com/questions/16657/special-
mathematica-cell-to-work-with-r-code)

------
niggler
Bessel functions aren't supported (and even Excel supports them!)

Try

    
    
        BesselJ[1,2]//N
    

On mathematica I get

    
    
        $ /Applications/Mathematica.app/Contents/MacOS/MathKernel 
        Mathematica 8.0 for Mac OS X x86 (64-bit)
        Copyright 1988-2010 Wolfram Research, Inc.
    
        In[1]:= BesselJ[1,2]//N
    
        Out[1]= 0.576725
    

In excel, `BESSELJ(2,1)` is the same to 5 significant figures.

~~~
melling
"Developers Wanted" is on the first page. Being on open source project, you'll
probably see a lot of organic growth and people scratching their own itches.

------
yread
There's also free alternative to Matlab, the GNU Octave
<http://www.gnu.org/software/octave/>

~~~
muuh-gnu
Maxima [1] is both a predecessor and alternative to both Mathematica and
Maple.

It is an descendant of DOE Macsyma, which ran only on expensive Lisp machines,
and porting it to PCs was slow enough to give Mathematica and Maple a
headstart.

It is kind of a shame that all the math and physics departments all over the
world keep using closed source black box solvers instead of working on
improving free and inspectable alternatives like Maxima, Octave, Sage, etc.

[1] <http://maxima.sourceforge.net/>

~~~
msutherl
> It is kind of a shame that all the math and physics departments all over the
> world keep using closed source black box solvers

They use them because they're more comprehensive, and scientists want to spend
their time doing science, not improving free software.

Also, in the case of Mathematica, the interface and feature set are far beyond
what any other tool offers (and can be expected to offer, given the track-
record of free software).

~~~
muuh-gnu
> scientists want to spend their time doing science, not improving free
> software.

Wasnt the whole point of science to build their own chain of verifiable tools
to rely on, instead of having to trust secret, unverified commercial black
boxes?

~~~
DigitalTurk
Eh. Is Richard M. Stallman teaching philosophy of science now or something?

Arguably, the rough idea is to discover and prove interesting or useful facts.

~~~
mjn
Yes, but discovering and proving interesting or useful facts requires some
degree of transparency and replication. It's at least _better_ , when
possible, for a scientist to use apparatus whose functioning they can inspect,
and that includes any major software components.

That's a bit different from Stallman's focus. Stallman is mainly interested in
the freedom of users to modify the software they use (and share those
modifications). But for scientific software the real issue is whether
scientists can look at how it works. It would be fine for it to be under a
"look but don't redistribute" proprietary license.

~~~
PeterisP
Other things being equal, it really would be better to use a more transparent
apparatus.

But other things aren't equal, and the productivity difference is order(s) of
magniture more important than the transparency of an apparatus that has been
successfully used by many others and is believed to give correct results.

------
jimktrains2
How is it different from SAGE[1] and Maxima[2]?

[1] <http://www.sagemath.org/> [2] <http://maxima.sourceforge.net/>

~~~
cowsaysoink
It uses mathematica's syntax.

~~~
muuh-gnu
This is a rather superficial reason to start such a project.

Mathematica is non popular because of its syntax, it is popular because of its
extensive library, graphics capabilities and documentation.

If you want to make free software packages more competitive compared to
mathematica, the best way would be to work on extending their libraries,
documentation and graphical capabilities, not increase the fragmentation by
starting yet another package from scratch doing the same thing just using a
slightly different syntax.

For all intents and purposes, from an user's point of view, this project is as
a waste of time as writing yet another scheme interpreter.

~~~
myhf
Mathematica is powerful because of its syntax.
<http://www.paulgraham.com/power.html>

------
chetanahuja
Years ago, I wrote a very rudimentary tutorial on Mathematica to get undergrad
chemistry students started on it. <http://www.cem.msu.edu/~cem883/mathematica-
instr.html>

The good thing is that mathics make very nice plots (at least for simple
functions I tested). The bad news is that it stumbled on a simple
NIntegrate.(*) It certainly has potential though...

[ Edit: Hmm looks like Integrate[] does what NIntegrate in my example was
supposed to do. I take the "bad news" back.]

------
tokipin
<http://mathematica.stackexchange.com> is a good place to look if you need
mathematica-related help

------
Mitt
Guys, also don’t forget: what we currently see is a snapshot in time. Right
now Mathics offers the features X and Y and lacks Z. But this may change over
the next years.

------
anuy
As several posters said, nothing will beat matlab with its long list of tool
boxes. It would be nice if there is more open source work in building more
tool boxes for Octave(octave is open source compatible to matlab).

------
scottfr
Looks, very nice. I tried some basic Mathematica functions (D[], Plot[], ...)
and at least that subset all worked as expected.

I couldn't find a full table of compatibility with Mathematica though, anyone
know where one is?

~~~
chr1
Really nice, but it supports only the very basics e.g Plot[x^2, {x, -1, 1},
AxesLabel -> {x, y}, PlotStyle -> Dashed, Filling -> Bottom] ignores all
options And D can't compute JacobiP derivative even with Simplify[
D[JacobiP[n, a, b, x], x] == 1/2 (1 + a + b + n) JacobiP[-1 + n, 1 + a, 1 + b,
x]]

It's startling how much work goes into something like Mathematica, too bad
it's not open source, and have to be redone:(

~~~
Evbn
Closed source paid the salaries of the people who put that startling amount of
work in.

------
frozenport
Heres a little incompatibility. The following code is valid Mathematica code,
but the on-line parser rejects it

Integrate[Exp[-(x/2)^2],{x,-Infinity,+Infinity}]

~~~
niggler
This works in both places (just remove the `+`):

    
    
        Integrate[Exp[-(x/2)^2],{x,-Infinity,Infinity}]
    

Both give 2 Sqrt[Pi]

~~~
frozenport
Thats the point :-) In Mathematica the `+` is supported

------
hackerkira
I'm using SAGE right now for calculus. The point is to have the computer do
the tedious work. But until I learn python, I end up spending my time
fidgeting around with the syntax instead of actually learning calculus. I'm
all for programing integrated with academia...but we need better software
(like Mathics!)

------
benbro
What's missing for IE9/10 support?

