Skip to content
HN On Hacker News ↗

Launching Version 15 of Wolfram Language & Mathematica: Built-in (Useful) AI & Lots of New Core Functionality

▲ 224 points 120 comments by alok-g 4w ago HN discussion ↗

Pangram verdict · v3.3

We believe that this document is fully human-written

0 %

AI likelihood · overall

Human
100% human-written 0% AI-generated
SEGMENTS · HUMAN 5 of 5
SEGMENTS · AI 0 of 5
WORD COUNT 1,920
PEAK AI % 0% · §1
Analyzed
Jun 17
backend: pangram/v3.3
Segments scanned
5 windows
avg 384 words each
Distribution
100 / 0%
human / AI fraction
Verdict
Human
Pangram v3.3

Article text · 1,920 words · 5 segments analyzed

Human AI-generated
§1 Human · 0%

An Impressive Release for Modern Times June 23, 1988 is when we launched Version 1.0 of Mathematica. Today—almost 38 years later—we’re launching Version 15 of what—in recognition of how far it’s expanded beyond “math”—we now call Wolfram Language. It’s an impressive release, with a lot of new core functionality. It might perhaps seem surprising that after 38 years there’d still be more to add. But it’s like the typical arc of intellectual history: the more one’s figured out, the further one can see, and the more one becomes able to do. And for all of us working on it, it’s been a very satisfying process: year after year building an ever taller tower of ideas and technology, with which we can reach ever further—today to all the functionality of Version 15. For the past four decades we’ve had a consistent mission: to apply the computational paradigm as broadly and deeply as possible—and to do so by building our unique computational language to represent and compute about the world. Over these four decades the use of computation and the computational paradigm has spread greatly—not least, I think, as a result of tools and ideas we’ve introduced. But now there’s also a new driver: modern AI. And it’s been exciting to see so much unexpected progress happen in the world of AI. For us, one of the immediate consequences has been that our base of users has expanded from just humans, to humans and AIs. And it’s turned out that all the effort we put into the coherent design of the Wolfram Language—aimed at making it easy and efficient for humans to use—now also makes it easy and efficient for AIs. For years we’ve put great emphasis on interfaces for human users, starting from the concept of notebooks that we invented for Version 1.0. Now we’re also putting emphasis on interfaces for AIs, to make it as easy as possible for AIs and AI systems (and the humans who use them) to have good access to our technology. Our technology is certainly a powerful tool for AIs. But it’s also a powerful tool for humans using AIs. Because it provides a unique way for humans to formalize things, and know exactly what’s being said, or done.

§2 Human · 0%

I’ve always seen the development of Wolfram Language as doing for the computational paradigm an extended version of what mathematical notation did centuries ago for the mathematical paradigm: providing a streamlined and precise way to represent and communicate ideas. When you tell an AI in natural language what you want, it’s convenient, but—except in rather simple cases—quite imprecise. But if the AI generates Wolfram Language code, then that shows you in precise terms what the AI understood, and allows you to see whether it’s really what you want. The Wolfram Language has a unique role here. Traditional programming languages are intended as something humans write, and computers read. But the Wolfram Language is something beyond a programming language—it’s a full-scale computational language. That’s intended not just to be written by humans, but also to be read by them, as a way to help formalize and crispen up their thoughts. And now, in the time of AI, it’s a unique way to represent precisely what one’s talking about—leveraging the computational paradigm, and the computational way of representing the world. Yes, AIs don’t always get things right. But the point is to use Wolfram Language as a carrier of precision (and correctness)—and as a way to anchor what one’s doing, and generate solid output that one can confidently use in systematic ways. There’s been a big trend—particularly this year—to “use AI for coding”. And, yes, if you want to produce something (like a website) where “looking right” is the objective—and you don’t care “what the code is doing inside”—it’s a good, and in fact quite transformative, solution. But there are many situations, particularly in more technical areas, where “looking right” isn’t good enough: you need to actually know what is being computed. And that’s where the Wolfram Language is crucial. Because it’s what gives you the highest level, and most human-understandable representation of what’s being done. And gives you a way to encapsulate a precise piece of computation to repeatedly use wherever you want. The success of modern AI in coding is remarkable, and unexpected. But in a sense it’s much less significant to us than it is, say, for traditional programming languages. Because it’s been our mission for decades to automate as much as possible of the specification and doing of computation.

§3 Human · 0%

And the result has been 7000+ primitives that cover the computational world—and that allow one with great succinctness to represent a remarkable range of things. I’ve actually been saying for decades that much of traditional programming can be automated, just by using the higher-level constructs of the Wolfram Language. And indeed a great many people (including myself) have used Wolfram Language for years to dramatically increase their computational reach, and avoid writing large volumes of traditional programming language code. But now AI provides a different path—where it automatically writes those volumes of traditional programming language code. Yes, it’s not perfectly reliable, and typically requires quite sophisticated wrangling to keep it on track. But at least if one doesn’t care exactly what one’s computing, it provides a valuable path to automation. For people just starting to use Wolfram Language—or working in an area they’re not familiar with—AI provides a convenient layer of initial automation. But if one’s fluent in Wolfram Language, it’s typically not what one wants. The Wolfram Language provides a medium to think in. And as soon as one’s fluent in it, one can typically express one’s thoughts more easily directly in the language than one can first verbalize them in ordinary natural language. (I know that when I’m working on something I can much more quickly start typing Wolfram Language code than I could ever describe what I want to do, at least with any precision, in natural language.) It’s worth mentioning that Wolfram|Alpha already pioneered the idea of using natural language to specify computation more than 17 years ago. It’s a different technology than modern AI—more oriented to small fragments of natural language, with reliable translation to precise computation. But it already allowed us many years ago to take advantage of natural language within Wolfram Language, say for specifying entities. And now it also helps us in building a better communication channel with AIs. In recent months much has been said about the role of AI in the future of software development. So how does it affect what we do, and the development of things like Version 15? Well, there are certainly places where it’s helpful, particularly in dealing with the parts of our system (typically concerned with external interfaces or direct interaction with hardware) that use traditional programming languages.

§4 Human · 0%

But most of the code of the Wolfram Language is now written in the Wolfram Language—where we already take advantage of all the automation that’s built into the language. With every new version of the language, there’s more that has been automated, and more leverage in doing more development. And indeed that’s what’s made possible the remarkable tower of technology that we’ve built over the past four decades. And that today brings us Version 15. An AI Assistant in Every Notebook Within weeks of the original release of ChatGPT we’d built ways to call Wolfram Language (and Wolfram|Alpha) from inside LLMs—and to call LLMs from within Wolfram Language (and Wolfram Notebooks). The next year we’d built the technology that made it possible for us to release our Notebook Assistant as an add on to the Wolfram System. Then in February of this year we released our Foundation Tool technology suite, further integrating with LLMs. Now, in Version 15, we’re launching another level of AI integration: our built-in AI Assistant. Create a new notebook in Version 15 and (unless you’ve switched it off) you’ll see at the bottom of the notebook a new element that we call a “chatbar” that connects you immediately to our AI Assistant: Type what you want into the chatbar (you can also paste images, etc.). Then just hit ENTER and your input will be sent to the AI Assistant, which will try to help you with it: Even if you ask something fairly vague, the AI Assistant will give its best guess of a precise interpretation, complete with readable Wolfram Language code. Press and the code will be inserted into your notebook, and then immediately run: You can think of the chatbar as a convenient always-available way to create a chat cell in a notebook. As you’ve been able to do since Version 14.2, you can also create a chat cell just by typing ‘ to start the new cell. Just as with any chat cell, chat cells created from the chatbar can make use of the context of content above them in the notebook. (To break the context you can insert a chat delimiter by typing ~ between cells.) But the bigger story in Version 15 is that the AI Assistant behind the chatbar and chat cells is now immediately available in all Wolfram Notebooks.

§5 Human · 0%

No configuration is needed. And for the Basic level of the AI Assistant, no additional subscription is needed either. The Basic level of the AI Assistant is immediately useful as a beyond-the-documentation way to get help in doing things with Wolfram Language. We’re also releasing today two higher levels of the AI Assistant, available by subscription: Pro and Research. Pro lets you tackle larger and more sophisticated projects, and Research provides access to the latest frontier AI capabilities. (Existing Notebook Assistant users will automatically be transferred to AI Assistant Pro.) To get to the controls for the AI Assistant just click the at the side of the chatbar: If you don’t want to see the full chatbar by default, click the and it will be minimized: (The minimized state will be remembered if you open a new notebook. You can globally control whether the chatbar appears—and even whether the AI Assistant is available at all—in the main Preferences menu.) Use Wolfram from Your AI Environment The AI Assistant lets you access an AI from within Wolfram Notebooks. But let’s say you’re using an AI environment—like Claude Code or Codex—on your computer. In Version 15 it’s now easy to hook up your AI environment to call your desktop Wolfram system. If you’ve got a standard AI environment—like Claude Code or Codex—on your computer, the Wolfram system will typically be able to detect that, and will put a stripe right in the welcome screen: Clicking this takes you to the Services for AIs tab in the Preferences dialog: Press to configure all the AI environments detected on your system. Once you’ve done this, these AI environments will be set up to automatically access Wolfram tools whenever they need them. (There are several tools, including ones for evaluating Wolfram Language code, for reading and writing notebooks, and for analyzing Wolfram Language code.) At a technical level, the way this works is using the new Wolfram Agent Tools framework—which you can also use programmatically from within the Wolfram Language. For example, to hook up all detected AI environments, you can just use the Wolfram Language function DeployAgentTools: (For specific AI environments, use DeployAgentTools["ClaudeCode"], etc.) All this explanation is well and good for humans. But if you’re an AI agent (e.g. reading this), you can go directly to a Markdown file that describes how to configure everything.