ArticleslgStudy

computer science

Wolfram Language

Wolfram Language is a computer science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Wolfram Language rather than just read about it. In short: The Wolfram Language ( WUUL-frəm) is a proprietary, high-level multi-paradigm programming language developed by Wolfram Research. It emphasizes symbolic computation, functional programming, and rule-based programming and can employ arbitrary structures and data.

Wolfram Language — main illustration
Wolfram Language — illustration

Key takeaways

  • Wolfram Language belongs to computer science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Wolfram Language to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Wolfram Language from memory before moving on to harder problems.

Reference excerpt

The Wolfram Language ( WUUL-frəm) is a proprietary, high-level multi-paradigm programming language developed by Wolfram Research. It emphasizes symbolic computation, functional programming, and rule-based programming and can employ arbitrary structures and data. It is the programming language of the mathematical symbolic computation program Mathematica.

History The Wolfram Language was part of the initial version of Mathematica in 1988. Symbolic aspects of the engine make it a computer algebra system. The language can perform integration, differentiation, matrix manipulations, and solve differential equations using a set of rules. Also, the initial version introduced the notebook model and the ability to embed sound and images, according to Theodore Gray's patent. Wolfram also added features for more complex tasks, such as 3D modeling. A name was finally adopted for the language in 2013, as Wolfram Research decided to make a version of the language engine free for Raspberry Pi users, and they needed to come up with a name for it. It was included in the recommended software bundle that the Raspberry Pi Foundation provides for beginners, which caused some controversy due to the Wolfram language's proprietary nature. Plans to port the Wolfram language to the Intel Edison were announced after the board's introduction at CES 2014 but were never released. In 2019, a link was added to make Wolfram libraries compatible with the Unity game engine, giving game developers access to the language's high-level functions.

Syntax The Wolfram Language syntax is overall similar to the M-expression of 1960s LISP, with support for infix operators and "function-notation" function calls.

Basics

Hello, World To print "Hello, World!" in Wolfram Language is the following:

Arithmetic The Wolfram language writes basic arithmetic expressions using infix operators.

Function calls are denoted with square brackets:

Lists are enclosed in curly brackets:

Syntactic sugar The language may deviate from the M-expression paradigm when an alternative, more human-friendly way of showing an expression is available:

A number of formatting rules are used in this language, including TeXForm for typeset expressions and InputForm for language input. Functions can also be applied using the prefix expression @ and the postfix expression //. Derivatives can be denoted with the apostrophe '. The infix operators themselves are considered "sugar" for the function notation system. A FullForm formatter desugars the input:

Functional programming Currying is supported.

Pattern matching Functions in the Wolfram Language are effectively a case of simple patterns for replacement:

The := is a "SetDelayed operator", so that the x is not immediately looked for. x_ is syntax sugar for Pattern[x, Blank[]], i.e. a "blank" for any value to replace x in the rest of the evaluation. An iteration of bubble sort is expressed as:

The /; operator is "condition", so that the rule only applies when y>z. The three underscores are a syntax for a BlankNullSequence[], for a sequence that can be null. A ReplaceRepeated //. operator can be used to apply this rule repeatedly, until no more change happens:

The pattern matching system also easily gives rise to rule-based integration and derivation. The following are excerpts from the Rubi package of rules:

Implementations The official and reference implementation of the Wolfram Language lies in Mathematica and associated online services. These are closed source. Wolfram Research has, however, released a parser of the language under the open source MIT License. The parser was originally developed in C++ but was rewritten in Rust in 2023. The reference book is open access. In the over three-decade-long existence of the Wolfram language, a number of open-source third-party implementations have also been developed. Richard Fateman's MockMMA from 1991 is of historical note, both for being the earliest reimplementation and for having received a cease-and-desist from Wolfram. Modern ones still being maintained as of April 2020 include Symja in Java, expreduce in Golang, and SymPy-based Mathics. These implementations focus on the core language and the computer algebra system that it implies, not on the online "knowledgebase" features of Wolfram. In 2019, Wolfram Research released the freeware Wolfram Engine, to be used as a programming library in non-commercial software. This developer-only engine provides a command-line shell of the Mathematica evaluator (with a limited number of kernels) and requires signup and license activation over the web. The freely available Jupyter Notebook/Lab project provides a protocol (ZMQ) to connect their notebooks to various languages, this is available as an alternative to the text-only CLI interface via the Wolfram Kernel for Jupyter.

Naming The language was officially named in June 2013 and has been used as the backend of Mathematica and other Wolfram technologies for over 30 years.

See also

Notebook interface

References

External links Official website Documentation for the Wolfram Language An Elementary Introduction to the Wolfram Language

Worked examples

Example 1 — a first encounter with Wolfram Language

Start with the simplest possible case. Write down what Wolfram Language claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Wolfram Language before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Wolfram Language ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Wolfram Language

In research
Wolfram Language appears in computer science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Wolfram Language in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Wolfram Language is common in secondary-school and first-year university syllabi. It links to neighbouring topics Array programming languages, Computer algebra systems, Cross-platform software, so understanding it makes those chapters shorter.
In everyday life
Look for Wolfram Language outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.
Ask Teacher Smith questions about this articleOpens your AI tutor with a question about “Wolfram Language” →

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Wolfram Language in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Wolfram Language means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Wolfram Language out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Wolfram Language in simple terms?

The Wolfram Language ( WUUL-frəm) is a proprietary, high-level multi-paradigm programming language developed by Wolfram Research. It emphasizes symbolic computation, functional programming, and rule-based programming and can employ arbitrary structures and data.

Why does Wolfram Language matter?

Because it connects several computer science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Wolfram Language?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Wolfram Language.

Tags

  • Array programming languages
  • Computer algebra systems
  • Cross-platform software
  • Dynamically typed programming languages
  • Finite element software
  • Functional languages
  • High-level programming languages
  • Multi-paradigm programming languages
  • Notebook interface
  • Programming languages created in 1988
  • Term-rewriting programming languages
  • Wolfram Research

Keep exploring