I feel like this language would really benefit from some sort of 1-pager overview.
I just spent a fair bit of time on the official site, and I still don't think I have a very good grasp of what problem this language aims to solve, or why I would select it over other similar languages
It's supposed to be (currently) a fully native, Python-like language, but for GPUs primarily. Though I am seeing it as having a future as a fully native Python alternative that might get interesting.
I hope with 1.0 (havent fully read the article yet) they stop breaking language features / syntax because they did quite a few different changes over time, their overall goal is to be a fully native superset of Python.
I know right? Would be better to have a banner with the language logo than some totally out of place aislop image, almost makes you think this is a random person's blog and not the official Mojo site
I believe Mojo has been primarily using AI-generated imagery of its mascot for several years now, which politically aligns with its pivot to being a language for AI development.
Isn't Mojo expressly for building AI frameworks? It isn't really needed or special as a language by-itself. It's main purpose is to make it easier to program these high end graphics cards for AI.
> Finally, we will continue to progressively open-source more of the Mojo language, as well as components in MAX that we have built with it. Our commitment remains unchanged – we will open source the Mojo compiler and toolchain in 2026.
> Weird to release 1.0 without it. What are they waiting for?
Hmm, I've been under the impression that at one point they said it'd be 100% FOSS by the time 1.0 hits, but maybe I misunderstand/misremember the details. But I remember they'd said it'd be FOSS in connection with 1.0, seems weird to do it this way instead of waiting until it's all FOSS then cut 1.0.
I think they are waiting for a wild success in adoption, and if that doesn't happen they can use the IP to pivot to something else without giving the core away to anyone for free/as open-source.
C and C++ were closed source for quite some time, they still are in places like commercial embedded OSes and console dev kits, even when they happen to be GCC and clang forks nowadays.
Clang actually has replaced most GCC forks exactly because vendors can keep the fork closed source.
Sure but at those times C and C++ had no immediate replacement, and if you were doing embedded C/C++ was your only option.
The same cannot be said for Mojo.
The C compiler source came with the AT&T UNIX tape ... it wasn't open source because FOSS didn't exist at the time and it was under a proprietary license, but it was not "closed source". Parts of MOJO, OTOH, are closed source because the source has not been released.
> Finally, we will continue to progressively open-source more of the Mojo language, as well as components in MAX that we have built with it. Our commitment remains unchanged – we will open source the Mojo compiler and toolchain in 2026.
Why not now though? Why wait for 4 more months? What magic is there to hide in just making it source available at least.
> They should show some performance comparisions between PyTorch and Mojo, PyTorch+kernel compilation + Triton vs Mojo, ThunderKittens vs Mojo.
The fact that they release 1.0 without doing this, I think says a lot. I personally haven't even started looking into Mojo because of the closed source stuff, but usually you can tell what's going on by looking for what's obviously missing.
The premise of Mojo used to be that it was a superset of Python so in theory LLMs would benefit from that but I'm not sure how much divergence there's been
Creating a new language in the age of AI seems kind of pointless. I don't write code by hand anymore, I only review it and I prefer it to be in a language which I already know since investing time in learning another language doesn't make sense at this point.
And Mojo will die because nvidia is not interested in maintaining any semblance of backwards compatibility when it comes to CUDA. It's going to be a perpetual race forwards, and whenever nvidia upgrades CUDA, you're going to be stuck there twiddling your thumbs and waiting for Mojo to become compatible.
Additionally, anyone who has seen how Swift evolved should be wary of Lattner saying "the language is mostly stable", or even "the language is released".
I just spent a fair bit of time on the official site, and I still don't think I have a very good grasp of what problem this language aims to solve, or why I would select it over other similar languages
I hope with 1.0 (havent fully read the article yet) they stop breaking language features / syntax because they did quite a few different changes over time, their overall goal is to be a fully native superset of Python.
Lastest OpenCV 5 release notes also had a lot of LLMisms.
I guess that's the new normal. Still, I am very hopeful for Mojo.
Yes, so basing confidence on it is totally bogus. Such comments are cheap and add nothing to the discussion of Mojo reaching 1.0 status.
So maybe an AI image isn't the worst.
Did they think that image would make them look fun or interesting? Because it's exactly the opposite.
Much better options out there. Python already has libraries like Pydantic that offload performance to functions written in Rust under the hood.
Hmm, I've been under the impression that at one point they said it'd be 100% FOSS by the time 1.0 hits, but maybe I misunderstand/misremember the details. But I remember they'd said it'd be FOSS in connection with 1.0, seems weird to do it this way instead of waiting until it's all FOSS then cut 1.0.
Make of that what you will.
The alternatives would be stuff like CUDA
Clang actually has replaced most GCC forks exactly because vendors can keep the fork closed source.
AMD/NVIDIA/Intel now having first class support for Python DSLs or GPU JITs for their APIs, and Julia as well.
Why not now though? Why wait for 4 more months? What magic is there to hide in just making it source available at least.
That's the favorable interpretation, atleast.
Am I understanding the current state of things correct?
They should show some performance comparisions between PyTorch and Mojo, PyTorch+kernel compilation + Triton vs Mojo, ThunderKittens vs Mojo.
The fact that they release 1.0 without doing this, I think says a lot. I personally haven't even started looking into Mojo because of the closed source stuff, but usually you can tell what's going on by looking for what's obviously missing.
But I hope they succeed, it's a very interesting approach. Then I will jump on it later on. S
Additionally, anyone who has seen how Swift evolved should be wary of Lattner saying "the language is mostly stable", or even "the language is released".
(And now in the age of LLMs, the barriers to get started with a new programming language are lower than ever)