I'm aways surprised that there's no open source language that provides everything you get with Wolfram language. For example, the level of pattern matching you can use when defining functions, as well as the high level of functional composition. It is like having a mix of APL, Lisp, and Prolog that is very productive to use.
There is Mathics: https://mathics.org/
It doesn't cover the full standard library of Mathematica but the syntax is very similar and a lot of functionality is there.
Wolfram language is the easy part to implement
Its standard library is almost impossible to reproduce in its enterity
If those libraries were like regular code that got published to Github or something like that.. like pypi or npm or crates.io or whatever. And if mathematica had a lean standard library. It would be very feasible to implement a clone that's basically compatible
I mean. Depending on just wolfram rather than random open source contributors has benefits, for example it's more resistant to supply chain attacks. Indeed the npm model is not good. But, it is open, and that's what enabled for example deno and bun to have some compatibility with node
> "...the level of pattern matching you can use when defining functions, as well as the high level of functional composition..."
This sounds like your average functional programming language. The Scicloj community is the first thing to come to mind (but I assume they don't do symbolic algebra/calculus like Mathematica does), but I don't know what you're specifically missing.
From a strict PL perspective, the Wolfram/Mathematica language is rather based on a term rewriting paradigm. The languages Maude, Pure and TXL would be examples of something that's broadly comparable but more generic. In general, it turns out to be a fairly niche paradigm that's not very useful outside of symbolic computing itself, or related fields such as modeling of PL syntax and compiler internals.