Expanding the frontiers of computational thinking with Wolfram Language

This site may earn affiliate commissions from the links on this page. Terms of use.

Stephen Wolfram has been working on computing language paradigms for nearly thirty years. His products are well known in scientific and engineering circles. The company’s Mathematica was first released in 1988, and in its latest incarnation is a very powerful computational engine, now based on the Wolfram Language. Last month at a South by Southwest keynote, he gave a long demo highlighting the many things you can do with the Wolfram language. Wolfram now aims to bridge the power of its computation engine to the vast stores of data that exist on the Internet.

Think of this idea as a very powerful general purpose API that can harness a trove of information on the Internet, and use it in very creative ways. Unlike other Web APIs, it doesn’t require you to learn REST or JSON and JavaScript or C#. Instead, it is a very English-like function based language, designed for relatively normal people who may not know much about coding.

Wolfram’s Alpha was introduced in 2009. The company calls it a “computational knowledge engine”, and it uses Mathematica’s computational power and Internet data sources to find answers to a wide variety of questions. Alpha is the power behind certain queries you can ask of Apple’s Siri, Samsung’s S Voice, and Microsoft’s Bing. The data sources are curated from structured data in both public and commercial websites, such as the CIA World Factbook , Wikipedia, and Dow Jones.

Wolfram language is a refinement and evolution of the functionality built into Mathematica and Alpha. Essentially Wolfram language is a rationalization and simplification of much of the underlying functionality in these products, “making the world’s knowledge computable,” as they pitch it. It is relatively unstructured, in the sense that you can use a function and some simple parameters and generate some very detailed results — the likes of which would take a significant amount of programming on other platforms.

Here are some examples. This function generates a graphic map of a ten mile radius of Austin, TX:

A query for “Van Gogh Artworks” in Alpha yields this function:

And a subsequent request for the first 20 images from the above result will yield this:

For anyone who knows how to write code, it’s easy to see that there are some high level functions here that do a lot of work that might otherwise require learning multiple APIs to get this data, and might also need a lot of other code to manipulate it. Wolfram language brings very powerful computational functions to bear on a wide variety of curated Internet data. It’s not perfect, though. It works well with factual and historical data, not information that requires nuance to analyze and understand. But it does offer the ability to interact with and manipulate a wide variety of data and computation, dealing with graphical, scientific, financial, geographic medical, and language data sets.

Education is one obvious application. Wolfram wants to bring the power of the language and computational thinking to schools. The company is working on the Wolfram Programming Lab, a free site on the Web that can teach kids (and adults too) the capabilities of the language in a fun way. Considering that many kids today are not interested in math and science subjects, this could be a good way to introduce them to the wealth of information out there and how to use it in novel ways. In that vein, an early version of Wolfram language is shipping on the Raspberry Pi — helping to further the Raspberry Pi foundation’s goal of stimulating education in computing and what you can do with the very affordable credit card sized computers.

During the talk, Wolfram also highlighted Alpha’s powerful natural language capabilities. For example, saying or typing “planes overhead” yielded a list of airline flights over the skies of Austin at that moment with GPS coordinates. While we’ve had voice recognition in cars and computers for some years, the ability to interact with a computer with the spoken word has been a sort of Holy Grail. Anyone that has seen 2001: A Space Odyssey will remember HAL, the intelligent all-knowing computer. Alpha is no HAL, but Wolfram’s language is laying the building blocks to get to that panacea, by having a very rich unified language of functions capable of manipulating and processing all sorts of data from the Internet.

One of the driving concepts behind the Wolfram language is Symbolic programming. In Symbolic programming, as Wolfram puts it, “anything can be anything”, and anything can be computed with and manipulated. He showed some examples of using Wolfram functions on a UI slider bar and an image of the planet Jupiter. Symbolic programming concepts have been used in artificial intelligence (AI) for many years, and the LISP programming language, perhaps the first symbolic language, dates from 1958. Wolfram is also incorporating some AI capabilities in the language. He showed the function “ImagIdentify” correctly identifying a picture of a banana. In the background, Alpha uses the pattern recognition functions of Mathematica on the JPG image file.

Wolfram’s goal with the language is to model it on the way humans use language. As he noted, language is unique to our species, it’s the way we relate to things in our world. Language is symbolic; we use words and phrases and to represent things both real and abstract. Building a model to enable computers to do the same as humans is his life’s ambition, and it’s certainly a worthy pursuit.

Tagged In

This site may earn affiliate commissions from the links on this page. Terms of use.

ExtremeTech Newsletter

Subscribe Today to get the latest ExtremeTech news delivered right to your inbox.

Email

This newsletter may contain advertising, deals, or affiliate links. Subscribing to a newsletter indicates your consent to our
Terms of Use and
Privacy Policy. You may unsubscribe from the newsletter at any time.