Which features are part of Mathematica, the software, and which features are Wolfram Language?
I would say there has to be a line discriminating the two somewhere. One could say that Mathematica, in addition to implementing WL, also includes:
- Libraries beyond standard libraries one has to explicitly
Get(eg.Notation). - Wolfram Knowlagebase with real data.
- Notebook specific features, which actually require a front-end to evaluate.
Why do I ask? I am writing a thesis, and I was wondering if I should say
Wolfram Language command
FlattenandPartition.
or
Wolfram Mathematica function
DepthFirstScan.
If I would implement my own kernel, I would consider it a must to implement Table, Flatten... but I do not think an implementation of a language requires implementation of DepthFirstScan with a narrow application.
I find these related:
- Is Mathematica an Implementation of the Wolfram Language?
- Is there an open source implementation of Mathematica-the-language?
- Is there the full Wolfram Language in Mathematica?
I have also browsed Notes for Programming Language Experts which was not specific. The Fast introduction for programmers: Built-in Functions claims
With 5,000 carefully integrated, built-in functions delivering computation and knowledge
which sounds a bit like everything implemented in MMA is WL.
Language Overview guide has an overview of all(?) syntax features, which perhaps are well on the language side of the discrimination. I also discovered WolframLanguageData, which might share some light into the matter.
Graphicsto an image are not part of the language as they make use of the FE throughRasterize. So it’s certainly a bit of a slippery thing to get a handle on. Still, the fact that a different front-end may be attached to a kernel makes me suggest that. – b3m2a1 Sep 15 '18 at 22:40ImageIdentifyare part of the language and help realize S.W.'s vision for the language. – C. E. Sep 16 '18 at 08:39