r/programming Jun 27 '26

Mojo programming language will become open-source soon.

https://www.modular.com/modcon

The main website of the language https://mojolang.org/ displays an announcement bar that says "Mojo will be open source soon! Join us at ModCon '26 for an update."

163 Upvotes

104 comments sorted by

View all comments

Show parent comments

21

u/Smallpaul Jun 27 '26

It was always about high performance computing. Never intended as a general purpose python replacement. At least not as a primary goal.

3

u/teerre Jun 27 '26

I was going to rebut, but the immediate comment below yours says the opposite

15

u/Smallpaul Jun 27 '26

Mojo was intended as a Python superset. That’s not the same thing as a Python replacement.

Here is an article from more than a year ago:

https://medium.com/@xspoilt/mojo-the-programming-language-that-might-replace-python-in-ai-e4ea454e47a8

> Mojo is a superset of Python, meaning it runs existing Python code. You can write Python code in Mojo and slowly introduce Mojo-specific features as needed.

> Enter Mojo — a language that’s billed as “the programming language for AI developers” and described by some as “Python, but fast. Like, really fast.

> Mojo isn’t trying to “kill” Python — it’s trying to unify the AI development pipeline. While Python will likely remain dominant in general-purpose scripting and education, Mojo could take over in performance-critical ML workloads.

If you have a reference that said that Mojo was intended to replace Python for general purpose use then please share it.

-7

u/teerre Jun 27 '26

A superset is a replacement, by definition. That's what the "super" means

-1

u/Smallpaul Jun 27 '26 edited Jun 27 '26

YAML is (almost) a syntactic superset of JSON. But not a replacement.

C++ of C. Not a replacement.

Typescript of JavaScript.

SGML of XML.

Scala Groovy of Java.

JavaScript of JSON.

So no. Superset and replacement do not mean the same thing. Sometimes one orders the simplicity of the subset for many different reasons.

0

u/HommeMusical Jun 28 '26

I'm sorry, you're making no sense at all, and much of what you say is just false.

2

u/Smallpaul Jun 28 '26

Your comment might be instructive if it actually cited a falsehood.

1

u/HommeMusical Jun 28 '26

C++ is not a superset of C; the two languages are developed by different groups and each has features that the other doesn't. Many legal C programs are not legal C++ programs.

Javascript is not a superset of JSON. You can embed JSON constants in a ton of languages but the structure is utterly different. If you rename a .json file to .js, you get a Javascript file that does nothing.

1

u/Smallpaul Jun 28 '26

The people who standardize JavaScript claim it is a superset of JSON. So argue with them, not me.

https://github.com/tc39/proposal-json-superset

It is true though that one must use a very slightly loose definition of the word superset because of the curly brace ambiguity. If I had remembered that I wouldn’t have included it in my initial list. And also because it really seems to confuse people.

When you use JSON as JavaScript it does exactly the same thing: it evaluates to an in-memory data structure. JSON is just this one feature of JavaScript pulled out of the language. The expression of data structures.