What Should We Call the Language of Mathematica?

At the core of Mathematica is a language. A very powerful symbolic language. Built up with great care over a quarter of a century—and now incorporating a huge swath of knowledge and computation.

Millions and millions of lines of code have been written in this language, for all sorts of purposes. And today—particularly with new large-scale deployment options made possible through the web and the cloud—the language is poised to expand dramatically in usage.

But there’s a problem. And it’s a problem that—embarrassingly enough—I’ve been thinking about for more than 20 years. The problem is: what should the language be called?

Usually on this blog when I discuss our activities as a company, I talk about progress we’ve made, or problems we’ve solved. But today I’m going to make an exception, and talk instead about a problem we haven’t solved, but need to solve.

You might say, “How hard can it be to come up with one name?” In my experience, some names are easy to come up with. But others are really really hard. And this is an example of a really really hard one. (And perhaps the very length of this post communicates some of that difficulty…)

language

Let’s start by talking a little about names in general. There are names like, say, “quark”, that are in effect just random words. And that have to get all their meaning “externally”, by having it explicitly described. But there are others, like “website” for example, that already give a sense of their meaning just from the words or word roots they contain.

I’ve named all sorts of things in my time. Science concepts. Technologies. Products. Mathematica functions. I’ve used different approaches in different cases. In a few cases, I’ve used “random words” (and have long had a Mathematica-based generator of ones that sound good). But much more often I’ve tried to start with a familiar word or words that capture the essence of what I’m naming.

And after all, when we’re naming things related to our company, we already have a “random” base word: “wolfram”. For a while I was a bit squeamish about using it, being that it’s my last name. But in recent years it’s increasingly been the “lexical glue” that holds together the names of most of the things we’re doing.

And so, for example, we have products like Wolfram Finance Platform or Wolfram SystemModeler for professional markets that have that “random” wolfram word, but otherwise try to say more or less directly what they are and what they do.

Wolfram|Alpha is aimed at a much broader audience, and is a more complex case. Because in a short name we need to capture an almost completely new concept. We describe Wolfram|Alpha as a “computational knowledge engine”. But how do we shorten that to a name?

I spent a very long time thinking about it, and eventually decided that we couldn’t really communicate the concept in the name, and instead we should just communicate some of the sense and character of the system. And that was how we ended up with “alpha”: with “alphabet simplicity”, a connection to language, a technical character, a tentative software step, and the first, the top. And I’m happy to say the name has worked out very well.

OK. So what about the language that we’re trying to name? What should it be called?

Well, I’m pretty sure the word “language” should appear in the name, or at least be able to be tacked onto the name. Because if nothing else, what we’ve got really is quintessentially a language: a set of constructs that can be strung together to represent an infinite range of meanings.

Our language, though, works in a somewhat different way from ordinary human natural language—most importantly, because it’s completely executable: as soon as we express something in the language, that immediately gives us a specification for a unique sequence of computational actions that should be taken.

And in this respect, our language is like a typical computer language. But there is a crucial difference, both practical and philosophical. Typical computer languages (like C or Java or Python) have a small collection of simple built-in operations, and then concentrate on ways to organize those operations to build up programs. But in our language—built right into the language—is a huge amount of computation capability and knowledge.

In a typical computer language, there might be libraries that exist for different kinds of computations. But they’re not part of the language, and there’s no guarantee they fit together or can be built on. But in our language, the concept from the very beginning has been to build as much as possible in, to have a coherent structure in which as much is automated as possible. And in practice this means that our language has thousands of carefully designed functions and structures that automate a vast range of computations and deliver knowledge in immediately usable ways.

So while in some aspects of its basic mode of operation our language is similar to typical computer languages, its breadth and content is much more reminiscent of human languages—and in a sense it generalizes and deepens both concepts of language.

But OK, what should it be called? Well, I first started thinking about this outrageously long ago—actually in 1990. The software world was different then, and there were different ways we might have deployed the language back then. But despite having put quite a bit of software engineering work into it, we in the end never released it at all. And the single largest reason for that, embarrassingly enough, was that we just couldn’t come up with a name for it that we liked.

The “default name” that we used in the development process was the M Language, with M presumably short for Mathematica. But I never liked this. It seemed too much like C—a language which I’d used a lot, but whose character and capabilities were utterly different from our language. And particularly given the name “C”, M seemed to suggest a language somehow based on “math”. Yet even at that time—and to a vastly greater extent today—the language is about much much more than math. Yes, it can do math really well. But it’s broad and deep, and can do an immense range of other algorithmic and computational things—and also an increasing range of things related to built-in knowledge.

One might ask why Mathematica is named as it is. Well, that was a difficult naming process too. The original development name for Mathematica was Omega (and there are still filetype registrations for Mathematica based on that). Then there was a brief moment when it was renamed Polymath. Then Technique. And then there were a whole collection of possibilities, captured in this old list:

Possible names for Mathematica

But finally, at the urging of Steve Jobs, we settled on a name that we had originally rejected for being too long: Mathematica. My original conception of the system—as well as the foundations we built for it—went far beyond math. But math was the first really obvious application area—which is why, when Mathematica was first released, we described it as “a system for doing mathematics by computer”.

I’ve always liked Mathematica as a name. And back in 1988 when Mathematica was launched, it introduced in many ways a new type of name for a computer system, with a certain classical stylishness. In the years since, the name Mathematica has been widely imitated (think Modelica, for example). But it’s become clear that for Mathematica itself the name “Mathematica” is in some sense much too narrow—because it gives the idea that all that Mathematica does is math.

For our language we don’t want to have the same kind of problem. We want a name that communicates the generality and breadth of the language, and is not tied to one particular application area or type of usage. We want a name that makes sense when the language is used to do tiny pieces of interactive work, or to create giant enterprise applications, and to be used by seasoned software engineers, or by casual script tweakers, or by kids getting their first introduction to programming.

My personal analytics data show that I’ve been thinking about the problem of naming our language for 23 years—with episodic bursts of activity. As I mentioned, the original internal name was the M Language. More recently the default internal name has been the Wolfram Language.

Back in the early 1990s, one of my favorite ideas was Lingua—the Latin for language (as well, unfortunately, as tongue), analogous to the Latin character of Mathematica. But Lingua just sounded too weird, and the “gwa” was unpronounceable by too many people whose native languages don’t contain that sound. There was some brief enthusiasm for Express (think “expression”, as well as “express train”), but it died quickly.

There were early suggestions from the MathGroup Mathematica community, like Principia, Harmony, Unity and Tongue (in the latter case, a wag pointed out that bugs could be “slips of the tongue”). One summer intern who worked on the language in 1993 was Sergey Brin (later of Google fame); he suggested the name Thema—“the heart of mathematica” (“ma-thema-tica”). My own notes from that time record rather classical-sounding name ideas like Radix, Plurum, Practica and Programos. And in addition to thinking a lot about it myself, I asked linguists, classicists, marketers and poets—as well as a professional naming expert. But somehow every name either said too little or too much, was too “heavy” or too “light”, or for some reason or another just sounded silly. And after more than 20 years, we still don’t have a name we like.

But now, with all the new opportunities that exist for it, we just have to release the language—and to do that we have to solve the problem of its name. Which is why I’ve been thinking hard about it again.

So, what do we want to communicate about the language? First and foremost, as I explained above, it’s not like other languages. In a sense, it’s a new kind of language. It’s computational, but it’s also got intrinsic content: broad knowledge, structures and algorithms built in. It’s a language that’s highly scalable: good for programs ranging from the absolutely tiny to the huge. It’s a very general language, useful for a great many different kinds of domains. It’s a symbolic language with very clear principles, that can describe arbitrary structures as well as arbitrary data. It’s a fusion of many styles of programming, notably functional and pattern based. It’s interactive. And it prides itself on coherence of design, and tries to automate as much as possible of what it does.

At this point, we pretty much have to have “wolfram”—or at least some hint of it—in the name. But it would be nice if there was a good short name or nickname too. We want to communicate that the language is something that we as a company take responsibility for, but also that it will be very widely and often freely available—and not some kind of rare expensive thing.

All right. So an obvious first question is: how are languages typically named? Well, in Wolfram|Alpha, we have data on more than 16,000 human languages, current and former. And, for example, of the 100 with the most speakers, 13% end in -ese (think Japanese), 11% in -ic (think Arabic), 8% in -ian (think Russian), 5% in -ish (think English) and 3% in -ali (think Bengali). (If one looks at more languages, -ian becomes more common, and -an and -yi start to appear often too.) So should our language be called Wolframese, Wolframic, Wolframian, Wolframish or Wolframaic? Or perhaps Wolfese, Wolfic or Wolfish? Or Wolfian or Wolfan or Wolfatic, or the exotic Wolfari or Wolfala? Or a variant like Wolvese or Wolvic? There are some interesting words here, but to me they all sound a bit too much like obscure tribal languages.

OK. So what about computer languages? Well, there’s quite a diversity of names. In rough order of their introduction, some notable languages have been: Fortran, LISP, Algol, COBOL, APL, Simula, SNOBOL, BASIC, PL/1, Logo, Pascal, Forth, C, Smalltalk, Prolog, ML, Scheme, C++, Ada, Erlang, Perl, Haskell, Python, Ruby, Java, JavaScript, PHP, C#, .NET, Clojure, Go.

So how are these names constructed? Some—particularly earlier ones—are abbreviations, like Fortran (“Formula Translation”) and APL (“A Programming Language”). Others are names of people (like Pascal, Ada and Haskell). Others are named for companies, like Erlang (“Ericsson language”) and Go (“Google”). And still others are named in whimsical sequences, like BCPL to B to C (“sea”) to shell to Perl (“pearl”) to Ruby—or just plain whimsically, like Python (“Monty Python”). And these naming trends just continue if one looks at less well-known languages.

There are two important points here: first, it seems like computer languages can be called pretty much anything; unlike for most human languages (which are usually derivative on place names), no special linguistic indicator seems to have emerged for computer languages. And second, the names of computer languages only rarely seem immediately to communicate the special features or aspirations of a given language. Sometimes they refer to computer-language history, but often they just seem like quite random words.

So for us, this suggests that perhaps we should just use our existing “random word”, and call our language the Wolfram Language, or WL—or conceivably in short form just Wolfram.

Or we could start from our “random word” wolfram, and go more whimsical. One possibility that has generated some enthusiasm internally is Wolf. Unfortunately wolves tend to have scary associations—but at least the name Wolf immediately suggests an obvious idea for an icon. And we even already have a possible form for it. Because when we introduced special-character fonts for Mathematica in the mid-1990s, we included a \[Wolf] character that was based on a little iconic drawing of mine. Dressing this up could give quite a striking language icon—that could even appear as a single character in a piece of text.

Wolf logo

There are variants, like WolframCode or WolframScript—or Wolfcode or Wolfscript—but these sound either too obscure or too lightweight. Then there’s the somewhat inelegant WolframLang, or it shorter forms WolfLang and WolfLan, which sound too much like Wolfgang. Then there are names like WolframX and WolfX, but it’s not clear the “X” adds much. Same with WolframQ or WolframL. There’s also WolframPlus (Wolfram+), WolframStar (Wolfram*) or WolframDot. Or Wolfram1 (when’s 2?), WolframCore (remember core memory?) or WolframBase. There are also Greek-letter suffixes, Wolfram|Alpha-style, like Wolfram Omega or Wolfram Lambda (“wolf”, “ram” and “lamb”: too many animals!). Or one could go shorter, like the W Language, but that sounds too much like C.

Of course, if one’s into “wolf whimsical”, there are all kinds of places to go. Wolf backwards is Flow, though that hardly seems appropriate for a language so far from simple flowcharts. And then there are names like Howl and Growl which I can’t take too seriously. If one goes into wolf folklore, there are plenty of words and names—but they seem more suited to the Middle Ages than the future.

One can go classical, but the Latin word for wolf is Lupus, which is also the name of a disease. And the Greek is Lukos [λυκος], which just seems like a random word to modern ears. With different case endings, one gets “differently styled” words. But none of the alternate cases or variants of these words (like Lupum, Lupa or Lukon) are too promising either—though at least I get to use my knowledge of Latin and Greek from when I was a kid to determine that. (And English forms like Lupine are amusing, but don’t make it.)

And in the direction of whimsical, there are also words like Tungsten, the common English name for element 74, whose symbol W stands for “wolfram”, and whose most common ore is wolframite. (And no, it was not discovered by an ancestor of mine.)

How about doing something more scientific? Like searching a space of all possible names, “NKS style”. For example, one can just try adding all possible single letters to “wolfram”, giving such unpromising names as Wolframa, Wolframz and Wolframé. With two letters, one gets things like Wolframos, Wolframix and WolframUp. One can try just appending all possible short words, to get things like WolframHowWolframWay and WolframArt. And it’s a single line of code in our unnamed language (or Mathematica) to find the distribution of, say, what follows “am” in typical English words—yielding ideas like Wolframsu, Wolframity or the truly unfortunate Wolframble.

But what about going in the other direction, and trying to find word forms that actually relate to what we’re trying to communicate about the language? A common way to make up new but suggestive forms is to go back to classical or Indo-European roots, and then try to build novel combinations or variants of these. And of course if we use an actual word form from a language, we at least know that it survived the natural selection of linguistic evolution.

There was a time in the past where one could have taken almost any Latin or Greek root, and expected it to be understood in educated company (as perhaps cyber- was when it was introduced from the Greek [κυβερνητης] for steersman or rudder). But in today’s world we pretty much have to limit ourselves to roots which are already at least somewhat familiar from existing words.

And in fact, in the relevant area of “semantic space”, “lexical space” is awfully crowded with rather common words. “Language”, for example, is lingua (“linguistics”) or sermo (“sermon”) in Latin, and glossa [γλωσσα] (“glossary”) or phone [φωνη] (“telephone”) in Greek. “Computation” is computatio in Latin, and arithmos [αριθμος] (“arithmetic”) or logismos [λογισμος] (“logistics”) in Greek. “Knowledge” is scientia (“science”) or cognitio (“cognition”) in Latin, and episteme [επιστημη] (“epistemology”), mathesis [μαθησις] (“mathematics”) or gnosis [γνωσις] (“diagnosis”) in Greek. “Reasoning” is ratio (“rational”) in Latin, and logos [λογος] (“-ology”) in Greek. And so on.

But what can we form from these kinds of roots? I haven’t been able to find anything terribly appealing. Typically the names are either ugly, or immediately suggest a meaning that is clearly wrong (like Wolframology or Wolfgloss).

One can look at other languages, and indeed if you just type “translate word” into Wolfram|Alpha (and then press More a few times), you can see translations for as many as a few hundred languages. But typically, beyond Indo-European languages, most of the forms that appear seem random to an English speaker. (Bizarrely, for example, the standard transliteration of the word for “wolf” in Chinese is “lang”.)

So where can we go from here? One possible direction is this. We’ve been trying to find a name by modifying or supplementing the word “wolfram”, and expecting that the word “language” will just be added as a suffix. But we need to remember that what we have is really a new kind of language—so perhaps it’s the word “language” that we should be thinking of modifying.

But how? There are various prefixes—usually Greek or Latin—that get added, for example, to scientific words to indicate some kind of extension or “beyondness”: ana-, alto-, dia-, epi-, exa-, exo-, holo-, hyper-, macro-, mega-, meta-, multi-, neo-, omni-, pan-, pleni-, praeter-, poly-, proto-, super-, uber-, ultra- and so on. And from these Wolfram hyperlanguage (WHL?) is perhaps the nicest possibility—though inevitably it sounds a little “hypey”, and is perhaps too reminiscent of hypertext and hyperlinks. (Layering on the Greek and Latin there’s Hyperlingua too.)

Wolfram superlanguage, Wolfram omnilanguage and Wolfram megalanguage all sound strangely “last century”. Wolfram ultralanguage and Wolfram uberlanguage both seem to be “trying a bit too hard”, though Wolfram Ultra (without the “language” at all) is a bit better. Wolfram exolanguage pleasantly shortens to Wolfex, but means the wrong thing (think “exoplanet”). Wolfram epilanguage (or just Wolfram Epi) does better in terms of meaning (think “epistemology”), but sounds very technical.

A rather frustrating case is Wolfram metalanguage (WML). It sounds nice, and in Greek even means more or less the correct thing. But “metalanguage” has already come to have a meaning in English (a language about another language)—and it’s not the meaning we want. Wolfram Meta might be better, but has the same problem.

So, OK, if we can’t make a prefix to the word “language” work, how about just adding a word or phrase between “wolfram” and “language”? Obviously the resulting name is going to be long. But perhaps it’ll have a nice abbreviation or shortening.

One immediate idea is Wolfram Knowledge Language (WKL), but this has the problem of sounding like it might just be a knowledge representation language, not a language that actually incorporates lots of knowledge (as well as algorithms, etc.) More accurate would be Wolfram Knowledge-Based Language (Wolfram KBL), and perhaps whatever the name, “knowledge-based language” could be used as a description.

Another direction is to insert the word “programming”. There’s of course Wolfram Programming Language (WPL). But perhaps better is to start by describing the new kind of programming that our language makes possible—which one might call “hyperprogramming”, or conceivably “metaprogramming”. (“Macroprogramming” might have been nice, but it’s squashed by the old concept of “macros”.) And so conceivably one could have Wolfram Hyperprogramming Language (WolframHL, WolframHPL or WHL) or Wolfram Metaprogramming Language (WML)—or at least one can use “hyperprogramming language” or “metaprogramming language” as description.

OK, so what’s the conclusion? I suppose the most obvious metaconclusion is that getting a name for our language is hard. And the maddening thing is that once we do get a name, my whole 20-year quest will be over incredibly quickly. Perhaps the final name will be one we’ve already considered, but just weren’t thinking about correctly (that’s basically what happened with the name Mathematica). Or perhaps some flash of inspiration will lead to a new great name (which is basically what happened with Wolfram|Alpha).

What should the name be? I’m hoping to get feedback on the ideas I’ve discussed here, as well as to get new suggestions. I must say that as I was writing this post, I was sort of hoping that in the end it would be a waste, and that by explaining the problem, I would solve it myself. But that hasn’t happened. Of course, I’ll be thrilled if someone else just outright suggests a great name that we can use. But as I’ve described, there are many constraints, and what I think is more realistic is for people to suggest frameworks and concepts from which we’ll get an idea that will lead to the final name.

I’m very proud of the language we’ve built over all these years. And I want to make sure that it has a name worthy of it. But once we have a name, we will finally be ready to finish the process of bringing the language to the world—and I’ll be very excited to see all the things that makes possible.


As announced March 11, 2013: The final name we chose is The Wolfram Language.

283 comments

  1. Borg? If you can get permission . . . .
    If not, maybe Ghengis? He assimilated all that he conquered . . .

  2. I like Thema. Short, pronounceable, easy to remember and spell. Clearly fits with Mathematica. And it sounds elegant and generally expressive.

    People will know it’s a Wolfram language without the need to put that name in the language name. Knuth / TeX; Guido vR / Python are examples of well-known associations without the need for a name.

  3. I don’t think it should have “wolfram” in the name.

  4. Or cube. It sounds kinda cool. And if anyone asks why you chose the name (which I’m sure they will), you can tell them it was inspired by the Borg.

  5. Wow, great article! I would suggest to keep it simple. Names that stuck out to me is Wolfram Meta, Wolfram Ultra, Wolfram Language, Wolf and Tungsten. Or something completely different that sounds good, and might have a slight relation to observation or computation like Hyperion.

  6. Hmm. It appears to me that what we’re talking about is the junction of mathematics and language. Reminds me of The Phantom Tollbooth and the conflict between the math-loving people of Digitopolis and the language-loving people of Dictionopolis, the two capital cities of The Kingdom of Wisdom.

    So I humbly submit, for name of the Mathematica programming language: Wisdom.

  7. Aww, hell. Just call it Lingua Mathematica.

    My gift to you.

    Problem solved. Have a nice day.

    ~Michael Gmirkin

  8. WolfScript sounds really badass.

  9. Symbolica

  10. I sort of liked “M” for Mother and Mathematica!

  11. Or, if Lingua Mathematica is too complicated, simplify my suggestion even further. Just call it ‘Lingua.’

    So, my two suggestions thus far:

    ‘Lingua’
    ‘Lingua Mathematica’

    Though I’m more partial to ‘Lingua Mathematica’ as an amusing latinized name and a play on lingua franca.

    http://en.wikipedia.org/wiki/Lingua_franca

    It’s a ‘unifying language’ (never knew that was one of the meanings or lat terms for lingua franca). But it fits perfectly… Since Mathematica’s language builds so much in, it kind of *is* ‘unifying’ in that way.

    Again, my gift to you. Trademark free. But feel free to footnote me somewhere if you like it. ^_^

  12. How about:
    Encyclopaedica, Compupaedica, CompuLingua or Computational Wolfram Linguistics (CWL)

  13. This might be too simplistic, but I’ll offer my $0.02.

    Mathematica works with cells as the basic units of input and output. The commands act on cells or at least reference previous cells.

    How about something like WolfCAL (WOLFram Cell Action Language)?

  14. I see you already considered Lingua and discarded it. Hmm… Well, I still like it. Though I still like Linga Mathematica better on account of the aforementioned play on words and how well the notion of a “unifying language” or “lingua franca” seems to fit the Mathematica Language notion of unifying a bunch of different stuff together into a single cohesive whole…

    Ahh well, I guess if you don’t like it, you don’t like it.

  15. how about Visual Complexity Language (VCL)…

  16. Might there be value in distinguishing between the language and the commercial product you license? The embedded knowledge (data, algorithms etc.) isn’t really inherent to the language itself, but is part of the “knowledge environment” that is the product you offer.

    If you rename the language itself, you probably want to keep a vestige of Mathematica. If you want to keep Wolfram in the name too, then WM seems to promise a catchy logo.

    For the product name, Wolfram Omni suggests that it’s more than a language. I think attaching “Language” to the name of the product may be too limiting of what the product really is.

  17. Wolfram. Obviously

  18. What about the name ‘symwired’?
    The long list of possible meanings is up to you 🙂

  19. Or… just ‘mathematical language’?

  20. I think a clever acronym is in order. One that is both memorable, conveys a sense of the language, and perhaps provides a description of the language when unfolded. My suggestion: CL@SYC or CLASYC: Computer Language Applied to SYmbolic Computation.

  21. Wolf is too short and has too much animal to it. But

    WolfrRAM

    or WolfML for Wolfram Meta Language

  22. I suggest “Gnosis”, or “Wolfram|Gnosis” Metalang.

    Greek noun for knowledge. It’s elegant and suggests a lot. It’s catchy, too. It’s not just about math, but includes math and everything else. It’s a language based on knowledge, to exploit and further knowledge.
    http://en.wikipedia.org/wiki/Gnosis

    I also like superlang, ultralang, and hyperlanguage.

    I like “Scientia” too, but not more than Gnosis.

  23. As Russell said/wrote “All Mathematics is Symbolic Logic”. I would suggest the Russell language – mathematica may become the closest to what Russell (and Whitehead) had in mind.

  24. What about Expression?

  25. Going with “knowledge” and taking a several-step detour through “sounds like wolf”, how about Odin?

  26. The language already has a name and it’s called Mathematica. Don’t over engineer or over think this simple problem.

    When friends ask me how I did it, I say, I programmed it in Mathematica, and they instantly know what I’m talking about.

    It’s Mathematica, and this blog post is just a void.

  27. I think “Wolfram” is kinda natural choice.

  28. Along with many others, I think Lingua Mathematica is the best choice. In fact I came here to suggest it, and I think others did too. There are other good reasons to go with this name:

    – It underscores how inseparable these two things are.
    – It would force a would-be competitor into an uncomfortable trademark position, as well as putting them in a position where they would have to explain how they could possible have Lingua Mathematica without Mathematica itself.

    It also has the pleasant property that nobody would be surprised to discover that it had always been the name–it sounds more like a long-lost fact now recovered than a fresh and new branding endeavor.

    Thema is a very clever name too. The sound of it suggests “Theorem” which also might be a good name, given the subject matter.

  29. I recommend something that can easily be found on a search engine. Naming it a common dictionary word means search results will have a lot of noise.

  30. Symbolica is a great name, elegant, descriptive, different, and continuous with Mathematica.

    Thema is delightful, mysterious, and without the ponderous or trivial connotations of common CS naming fashions.

  31. Why not just name it Matica?

  32. What about naming it Meta? It’s short and has already got some familiarity among non-scientific circles, and it almost implies some sort of transcendence, that this is a language about not just one thing but a language about everything, like it sits in some Platonic universe detached from the real-world applications we’d be using it for. Just a thought.

  33. My vote would be for Wolfram Programming Language (WPL). Filename extension of wpl and it can be pronounced as Wipple for conversational purposes.

  34. You folks pretty much already named it with such a general language: Universa, W-versa, etc…

  35. First, pick a 2 character file extension that isn’t used by any important language/system. Then pick a language name based on that extension. The other thing is you will get used to any name you pick. The meaning comes from people using and enjoying your language, not from some arbitrary name you choose. So here’s my suggestion: “Glyph” and “.gy”.

  36. Don’t put anything with your name on it! Use the opportunity to reward someone. Not your kids or wife or family but someone from outside. Give to someone more than they will ever give back to you. I`m saying this because, with all respect, you have a fame to be “all about me”. I understand you but this is the moment to show you are more than that! Call it “Martim” to honor the humble guy who wrote this comment. People will love and the history will last forever!

  37. I like the name “marflow”. It’s what I see in the mirror when I wear my wolfram t-shirt 🙂

    I think it kind of makes sense as a name because the wolfram language is a ‘reflection’ of the wolfram company. It’s also a facet of the company, and a facet of a precious stone is attractive because of how it reflects light.

    Then the longer form

    wolfram marflow

    has a nice symmetry to it.

    I also like the word “flow” in the name, because for me the way the Mathematica language ‘flows’ is one of its major strengths. Mathematica code is terse and expressive, with a very nice flow to it. Quick and productive; it has an awesome workflow.

    I actually find “marflow” easier to say than “wolfram”. They both have two syllables of course — which I think is the maximum that should be considered (e.g. “W” takes too long to say) — but the “l” before the “f” in wolfram often gets lost and pronounced “woof-ram”. The word marflow is easy to pronounce in full, for me at least.

    This was a fun blog post! I’m excited to see what names people come up with.

  38. I really like Tungsten. It is relevant, many people using the language will get the reference, and it isn’t long and bulky, although it doesn’t incorporate the brand name. Think: “Oh, I program in Tungsten.” You could even get a spikey made of tungsten!

  39. Thema gets my vote! If this were an election…

  40. For this scientific attribution to the people, the proper name would be “Wolfram”. Plain and simple. And the name will ressonate through history books about the man and program that helped everyone develop the emerging world.

  41. Keep it simple. Please.

    It is unlikely the this language will ever run outside the Mathematica ecology, so why not just stick with “Mathematica”? That’s what I do. Sometimes I abbreviate it as “Mma” — which I could perhaps rationalize as “Mathematica Meta” or, better yet, “Meta-Mathematica.”

    Adding “Wolfram” is a truly bad idea. It sounds forced and mercantile and is a complete and utter turn-off. As much as I appreciate all things Wolfram, putting the name on the language reminds me of the dog park, not of all the good Mathematica represents. There’s no need to “mark” everything, we already know who created this. Thank you. No more marking, please, it’s beginning to smell bad.

    If this is a”fait accompli,” and ego or marketing has vanquished good sense, some modesty might be called for. How about just “RAM”? This can be thought of as an acronym, if necessary. “Ratio et Mathematica,” perhaps? The Mathematica community is pretty clever, wouldn’t you say? I think they’d get the hint. It could have a nice(ish) logo, too. Ram tough. Hmmm. Might want to Dodge that.

    Greek: the natural name would be “Mathema”(μάθημα), meaning “that which is learned.” The nice thing about this is that it is actually contained in “Mathematica,” just as the language is contained in the environment. This is probalby the best solution, and one that actully communicates something worth communicating: that “mathematics” are those things that are definite enough to teach and learn (unlike opinions). “Meta” would be second best. “Nous” (νούς) or “Noesis” (νόησις) are also meaningful. I wouldn’t be afraid of them, but your marketing department probably might be.

    If a name must be used, and it isn’t Wolfram or its derivatives, perhaps “Thales” can be invoked.”Pythagoras” deserves the honor, but the names is probably too long. “Cosmos” or “Kosmos” (κόσμος) would be the best Pythagorean term. “Metron” or “Metron Ariston” (μέτρον άριστον) would also be meaningful.

    If all else fails, use “M”… (meta, mathematics, music, measure, monad, much more)

  42. you can call it

    HyperMeta Lang
    and more affectionately HyperMetaL

  43. If one wanted to go a step futher, one could add the additional term Novus, to my prior suggestion of “Lingua Mathematica” [Novus].

    Google Translate gives this translation: “The language of the new mathematics.”

    The acronym is L.M.N. (a simply +1 alphabetic progression of letters), with an amusing phonetic pronunciation: “L[E]M[O]N”…

    Hehe. Kinda’ random, kind cute. Maybe memorable on a few levels?

    Thoughts?

    Best,
    ~Michael Gmirkin

  44. Wm, pronounced “whim”.

  45. Computer language names have a distinctly different purpose than spoken languages in that they are contrived to present a flavor, weight, and marketing appeal instead of being descriptive or representational of their heritage.

    In reading the post, the name ‘Flow’ stood out presenting that Zen like quality and ease of representing data and actions. It’s a non-threatening word that invites one to begin experimentation, vital to to the introduction to programming crowd, yet is a versatile word used in technical descriptions (think workflow, flow-rate, peak flow, etc) as well as implying constant forward motion.

    Even with Flow’s acceptance as a common word it doesn’t carry any pretense of emotion or danger (IE: wolf) and dosen’t try to be pretentious by being born of an impressive acronym. This permits the language itself to define what the name means instead of carrying the impression of a predetermined purpose like you’ve already identified with the name Mathematica.

    Wolfram Flow Ver10.0

    🙂

  46. Reading your article, I was bewitched by the fact you have been thinking so much refusing to compromise your expectations. So I started thinking myself. Here my conclusions.
    In no author except in Wittgenstein you’ll find an answer. The problem you face is absolutely philosophical. This is not the place to discuss Wittgenstein’s thesis, but I recommend it. For my purpose it is enough what follows. Language, logically understood, reflects the possibilities of the combinations of elementary entities named objects. Objects exist necessarily. The whole collection of their possibilities, among which some subsist in the contingent world some others do not, defines the Logical Space. This is the key word. In the original Wittgenstein’s speech, it sounds “logischen raume”. Here my advice: WOLGRAUME, meaning “Wolfram LoGischen RAUME”. I hope it could satisfy the criteria you presented in your blog.

  47. I would go with:

    Affid from affidavit (he asserted). The Affid takes the masculinity out of it and shortens it to something memorable.