3 ms·
It says that Maxima also has its own programming language (written in Lisp). Any opinions on it good or bad?
by etaioinshrdlu 5y ago
It says that Maxima also has its own programming language (written in Lisp). Any opinions on it good or bad?
- rexpress 5y agoIt's been a few years since I used Maxima, which was at university but without much introduction to the language. The dynamic scoping was a particularly unpleasant surprise, lexical scoping was not available which lead to buggy behaviour. I returned to the warm embrace of Mathematica fairly quickly.
- reikonomusha 5y agoIt’s a rather plain language. Nothing too special about it. Has functions, variables, assignment, loops, and a few other rudiments.
- deleted 5y ago[deleted]
- mkl 5y agoIt's more like Maxima is a programming language. Its syntax is weird, archaic, and clunky, and different from anything else you've ever used for no reason except that it dates back to 1968, before C, before Pascal. Assignment uses ":", blocks of statements use "(" and ")", etc. Aside from the syntax, its features are mostly pretty basic and standard, and apart from mathematics quite limited.
- yjftsjthsd-h 5y agoIn fairness, "predates every other option you might compare it to" really is a good excuse.
- thayne 5y ago> Its syntax is weird, archaic, and clunky, Maybe if you come from a CS background. From a math background, it's syntax is actually more natural than most contemporary programming languages. For example, : is used for assignment, because = has the normal mathematical meaning. Blocks use parentheses because that's how you group stuff in math. Maxima is very much a domain specific language, where the domain is mathematics.
- mkl 5y agoI come from a maths background, and I disagree. Maths would more likely use ":=" for mutating assignment, not ":", which I've never seen. I also don't think I've ever seen a sequence of steps in maths denoted by parentheses. More commonly they're in a numbered list. 1960's ALGOL-60 used ":=" for assignment and "begin" and "end" for blocks.
- pfdietz 5y agoI've seen := become standard in math to mean definition, not mutating assignment.