4 ms·
My guess is that most of the general purpose programming languages are usually poorly suited in one way or another for domain specific programming. Matlab has
by orbifold 11y ago
My guess is that most of the general purpose programming languages are usually poorly suited in one way or another for domain specific programming.
Matlab has a large standard library and a reasonably well integrated development environment. Its language and library ecosystem is also adapted to the domain the authors are working in. Scientific libraries in other languages come close or maybe surpass them, but it is still the de facto standard in certain parts of scientific computing.
The only reasonable alternative I can think of is IPython / Anaconda with the right set of libraries or maybe Julia, which borrows heavily from Matlab, both however don't offer all of the IDE features that a typical Matlab user maybe takes for granted.
Other languages like C++ are usually excluded by default because of their obvious very poor suitability for rapid exploratory programming.
- nemoniac 11y ago> My guess is that most of the general purpose programming languages are usually poorly suited in one way or another for domain specific programming. For this reason, Lisp would be ideal for this.
- orbifold 11y agoIn an ideal world maybe, but in reality if the fraction of (hours invested in actual project)/(hours invested in fixing tooling, write high quality easy to use libraries for data visualisation, data import / export, linear algebra, optimisation, statistics etc.) approaches zero, then a language probably won't be used. Also in this case the syntax of Matlab and the convenience with which you can manipulate indexed expressions with it, would probably not easily trumped even by a dsl embedded in Lisp, not without significant investment in developing such a domain specific language.