9

What free and commercial tools for Wolfram Language development do you know? A while back I did a review of free tools for developing in the Wolfram Language (you can read my review with the help of a translator here). But time goes by, the number of tools and technologies grows, and my review doesn't get any more hits. So I thought I should do a similar review, but first in English, second on the most popular and useful resource on Wolfram Language, and third in a format where I can easily add new tools to my review without editing the whole page/article.

I think this would be super-useful for beginners and advanced users alike - a list of all available tools with pros and cons. I think there can be both plugins for code editors and entire IDEs. Or alternative interfaces like Jupyter.

Kirill Belov
  • 618
  • 6
  • 17
  • 3
    I am still waiting for a real easy to use debugger (like the one that comes with Matlab). Been waiting for 20 years now. May be Wolfram will make one in the next 20 years? But I have given up hope. – Nasser Oct 15 '23 at 20:37
  • @Nasser did you try to use debugger from Eclipse + Wolrfam Workbench? – Kirill Belov Oct 15 '23 at 21:24
  • 2
    Yes ofcourse. But that is useless really. I posted question about it here . Many issues with it that it is not practical to use. I can't issue Mathematica commands inside it. Can only look. And can not have another Mathematica notebook running at same time. So I use Maple now since it has a debugger. Not GUI based but only command line (like gdb (GNU debugger) on Unix) so not very easy to use, but at least I can debug with it and use it all the time – Nasser Oct 15 '23 at 21:56
  • @Nasser did you try debugger in Mathematica main menu Evaluation > Debugger? – Kirill Belov Oct 16 '23 at 07:27
  • Yes! This is also useless. First it only works with notebooks. Not m files. So can't use it to debug packages. It is also very hard to use. I think there are only 5 people living who actually use it and know how. I am asking for normal, easy to use debugger. Like one that comes with Matlab and Visual studio for example. All other developments tools in Mathematica mean very little to me personally, if there is no debugger as well. but this is just me. Others, much better programmers, might not need a debugger at all. – Nasser Oct 16 '23 at 07:43
  • 2
    @Nasser I very rarely use both debuggers I mentioned above. Usually, when I write code in Notebook, I am forced to write short blocks with the possibility to execute each small piece of code separately. This in itself is more convenient than the debugger I am used to using in Visual Studio. – Kirill Belov Oct 16 '23 at 18:04
  • 1
    I very rarely use both debuggers Well, then you must be one of those really good programmers I was talking about who does not need one :) see this but I think the average programmers do need a debugger to help them. I myself (consider my self an average programmer) do find it useful many times to help me find my bugs. – Nasser Oct 17 '23 at 02:54

2 Answers2

8

Since no one is posting, I will try to help, even though I've shared this answer under other similar questions. :)

There is an actively developing freeware tool for the Wolfram Engine called WLJS (Wolfram Language Javascript) Frontend.

plotting functions

dynamics

Why create another frontend when there is Jupyter?

A new frontend was created from scratch in order to overcome the limitations of the API and cell editor. It provides some benefits:

  • Partial Boxes support, allowing the maintenance of Mathematica's famous 2D mathematical input/output.
  • 2D, 3D graphics were rebuilt from scratch using d3.js and three.js (no Export SVG is used as in most approaches)
  • Native dynamics support (sliders, plots, event-based systems, but implemented in a different way).
  • Editable output cells.
  • Native binding to Javascript cell types (WebGL, any web framework can be used in conjunction with Wolfram Language).
  • HTML, mermaid, gpt3.5, or any other cell type you prefer can be added.
  • Only installed wolframscript is required.

If someone is interested:

Kirill Vasin
  • 1,235
  • 12
  • 14
  • (+1) There is also Wolfram Cloud, of course, which gives free access to Mathematica. Also, personally I find this site good :-) – user1066 Oct 20 '23 at 08:06
  • 3
    True! I was a big fan of Wolfram Cloud until they changed the policy and removed all of my notebooks ;D After that my mind got infected by an open-source and cloudless technologies – Kirill Vasin Oct 20 '23 at 10:45
  • 1
    @KirillVasin what do you mean by cloudless technologies? You mean something that does not requires access to the internet to use? – Nasser Oct 24 '23 at 06:34
  • 3
    @Nasser, correct! An immortal technology that will work any time and does require only wolframscript installed ;) – Kirill Vasin Oct 24 '23 at 06:54
  • Looks great! And the interface feels much much better than jupyter notebooks. How's development going? – jWey Dec 25 '23 at 05:23
  • 1
    Thanks, @jWey. :) In principle i have been using it already for a half of a year in the university with my students. Most features for 2D plotting are implemented as well as for dynamics. Now we are refactoring the code base to improve stability and UI right now. No breaking or huge changes are expected – Kirill Vasin Dec 25 '23 at 12:58
  • (+1) Very nice! I want to use it :-) – E. Chan-López Jan 15 '24 at 06:17
6

Let me know in comments if you see anything missing - I will add.


OFFICIAL

Some summaries:

Listen to this 2021 video:

Don't miss essentials and random things like:

EXTERNAL

IntelliJ

Wolfram Language Javascript Frontend

IDE by @b3m2a1 ​

Visual Studio Code Client for Wolfram Language Server

VisX: Visual Interface to the Wolfram Language

Vitaliy Kaurov
  • 73,078
  • 9
  • 204
  • 355
  • 1
    Thank you so much! This is exactly the answer to my question I expected to see! I was especially happy that you included our project with Kirill in your list =) – Kirill Belov Oct 19 '23 at 11:48
  • 1
    I wrote to the VisX developer asking to participate in beta testing, but he replied that the testing was over. It's a pity I didn't manage to see what he managed to achieve. – Kirill Belov Oct 19 '23 at 11:49