8

What I need is:

  • symbolic calculation capabilities (I don't need software that does numerical stuff)
  • extensible with a simple programming language. It can be interpreted (Python or Ruby), but something classical like Lisp or Haskell would also be nice
  • great documentation
  • pre-compiled versions for Linux

Is there anything available?

4

SymPy

I've been really liking the SymPy in Julia. I haven't used the underlying module in Python, much.

Using it within in IJulia/IPython, for a Mathematica notebook like experience. It is technically a library, but it is very well suited to interactive use in the notebook.

  • symbolic calculation capabilities. Yes.
    • It also interacts nicely with numpy (in python), and Arrays (in julia)
  • extensible with a simple programming language. Yes.

    • I have extended it in Julia
    • core development is in Python
  • great documentation. Mostly

  • pre-compiled versions for Linux. Not Technically, but practically
    • Since python and Julia are both interpreted, you can't really precompile things for them.
    • But Installing is very easy
      • Python: pip install sympy
      • Julia: Once installed for python, in the (I)Julia shell: Pkg.add("SymPy")
  • I checked all suggested solutions and it seems that it is the best choice. – enedil Feb 11 '15 at 20:13
  • enedil: Can I ask if you are using it in Python, or in Julia? – Lyndon White Feb 12 '15 at 2:35
  • At that moment it's Python (there's more information across the Internet) but I'll probably switch to Julia in the future seeking performance. – enedil Feb 12 '15 at 6:12
8

I can recommend two possible softwares, similar to Wolfram Mathematica:

  • Mathics: open-source alternative to Mathematica with similar syntax, started as an open-source version of Mathematica language. Has good documentation and online version, as well as simplicity of installing under Linux.
  • Sage: nice mathematical package, has more limited symbol capabilities, comparing to Mathics or Mathematica. Has documentation, binaries and extensibility with Python.
  • Mathics is wonderful, thank you! – Undo Sep 13 '15 at 1:02
  • I tried Sage but it's 1) huge (3 GB, yes 3 GB!) 2) a heterogenous mix of lots of things (Python's very good Numpy, R, Maxima, etc.) so it might be labyrinthic for someone who doesn't know them 3) doesn't offer a GUI out-of-the-box (or maybe it's a hidden feature because they don't speak about it here wiki.sagemath.org/SageWindows and only show console mode)... So it's even close to Maple (I'm looking for a Maple open-source equivalent, but haven't found yet...). – Basj Dec 4 '17 at 19:30
5

Maxima is a system for the manipulation of symbolic and numerical expressions. The Maxima source code can be compiled on many systems, including Windows, Linux, and MacOS X. The source code for all systems and precompiled binaries for Windows and Linux are available at the SourceForge file manager.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.