There seem to be lots of papers discussing the functional programming paradigm terminology for Haskell, such as monad, category theory, lambda calculus, *morphism, etc. People study concepts and theory derived from haskell in depth.

Is there any programming language theory (PLT) research on the Mathematica paradigm (such as rule-based system, term-rewriting, and other mechanisms MMA uses)? How do contemporary PLT-ers think about Mathematica?

It seems that they often omit Mathematica to some degree. Honestly, I don't know much about Haskell, but I also can't imagine that Mathematica is completely missing some crucial aspect of programming theory that makes it that much inferior.

Also, if the truth is "no, there aren't!, MMA is fine and perfect!", then why aren't there as many papers as for Haskell talking about the Mathematica programming language?

  • 12
    $\begingroup$ An opinion here... I think the reason why you see lots of language research articles on languages such as Haskell is because it's very much an academically designed language, and as such a clean one. Most languages are either boring, or "dirty", mixing paradigms in ways language theorists sneer at. WL is definitely "dirty" in this sense, even if it gets things done. It's functional, but not purely so. It's term-rewriting, but surely imagining everything you see is really term rewriting is unrealistic. And it's not as popular as C, whose troubles get attention due to it. And it's proprietary. $\endgroup$
    – kirma
    Commented Apr 18, 2016 at 17:47
  • 3
    $\begingroup$ Yes, about the MAUDE system, and term rewriting in general. But I'm not aware of anything about Mathematica specifically. BTW, you should specify that "PLT" means "programming language technology". $\endgroup$ Commented Apr 18, 2016 at 17:48
  • 10
    $\begingroup$ And to top all of it, I think there's no formal definition of crucial parts, such as the term rewriting logic which is mostly intuitive, but a bit of a proprietary, closed-source black box. That's something to sneer at, even if it works. $\endgroup$
    – kirma
    Commented Apr 18, 2016 at 17:50
  • 2
    $\begingroup$ I believe Roman Maeder and his group did some work on this while at the ETH. $\endgroup$
    – user21
    Commented Apr 18, 2016 at 20:42
  • 8
    $\begingroup$ Somehow, I have a feeling that there is a strong correlation between the volume of research and the availability of at least one compiler for a full language, for the mainstream languages at least. This is probably another way to say what @kirma stated, because availability of the compiler implies certain degree of rigor in the language spec. Also, this seems to be a necessary but not sufficient condition - there are certainly languages which have compilers but aren't so fascinating to do research about (my gut feeling is that C++ can be an example here). $\endgroup$ Commented Apr 18, 2016 at 23:04


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.