Mojo 1.0

207 pointsposted 5 hours ago
by dayanruben

94 Comments

swiftcoder

2 hours ago

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

totalperspectiv

2 hours ago

Having written a lot of Mojo over the last two year, just for fun, it's a really cool language. Ownership model adjacent to Rust, comptime in the realm of Zig, rich type system, first class SIMD support, etc. Performance wise it's the first language in long time that isn't just an LLVM wrapper. LLVM is still involved, but they are using it differently than say, Rust or Zig.

Very excited for Mojo once it's open sourced later this year.

cpeterso

2 hours ago

> LLVM is still involved, but they are using it differently than say, Rust or Zig.

Chris Lattner said in a Developer Voices podcast interview:

"Swift in a way was syntactic sugar for LLVM, at the very bottom of the stack it could talk directly to LLVM primitives. Mojo does basically that same trick, but it supercharges it by moving to this MLIR world."

afdbcreid

2 hours ago

> Performance wise it's the first language in long time that isn't just an LLVM wrapper

Why? Because it uses MLIR? Rust has its own MIR, it's even more not-LLVM-wrapper.

giancarlostoro

an hour ago

Probably because the creator created both LLVM and MLIR.

nu11ptr

2 hours ago

How are compile times compared to Rust? Zig? Go?

embedding-shape

2 hours ago

I felt the same way, even after browsing around on the website, and somehow I got to https://mojolang.org/docs/manual/quickstart/, which brings you to mojolang.org instead, which is the real website of the language it seems, instead of "Modular" which I guess is the business.

https://mojolang.org is a lot better as a introduction to the language for a programmer, at least for me, compared to whatever I could find on the modular.com website.

giancarlostoro

2 hours ago

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 do see this one overtaking Nim over time, which kind of saddens me, because I like Nim for what it is, but Mojo trying to be a superset of Python is a no-brainer for most Python developers. Reminds me of how a lot of Go devs were former Python devs not C++.

efficax

an hour ago

i think the main idea is that by using MLIR[1] instead of the usual LLVM path it can target gpus directly

1. https://mlir.llvm.org/

manojlds

2 hours ago

Python, but good.

swiftcoder

2 hours ago

I mean, it feels like "Python, but aiming at a completely different vertical that values native compilation and a borrow checker"? Which is not quite the same thing

steve1977

2 hours ago

So, without significant indentation?

usef-

9 minutes ago

I didn't realise people still complained about this in 2026. When has it ever been an issue in use?

tyre

2 hours ago

Oh nooooo, they fucked it up too. Why would someone make a language that’s whitespace sensitive? It’s confounding.

BeetleB

an hour ago

To weed out programmers who don't indent.

syrrim

an hour ago

Why would someone make a language where the programmer and the interpreter have two different ways of figuring out where blocks start and end?

ioasuncvinvaer

34 minutes ago

at the closing curly?

syrrim

25 minutes ago

Programmers look at the indentation.

mplewis

an hour ago

It's really not that bad

Fraterkes

44 minutes ago

Significant indentation is why people love python. Can 2 billion people be wrong?

redlewel

3 hours ago

Don't see the value of using a language with a closed source compiler...

Much better options out there. Python already has libraries like Pydantic that offload performance to functions written in Rust under the hood.

nylonstrung

2 hours ago

The point is that Mojo compiles to MLIR for programming on heterogenous compute and GPU so something like Pydantic isn't really comparable here.

The alternatives would be stuff like CUDA

woadwarrior01

2 hours ago

The value has already been materialized. They were acquired by Qualcomm for $3.9 billion.

sgt

an hour ago

Wow, so Lattner became a billionaire. Pays to be in compilers.

woadwarrior01

33 minutes ago

For once. A former colleague once quipped: The only way to make decent money in the business of language runtimes is to get a job at a big company that depends on it.

my123

3 hours ago

> 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.

mort96

3 hours ago

It's categorically uninteresting until and unless that happens. Weird to release 1.0 without it. What are they waiting for?

ktm5j

4 minutes ago

A lot of people beg to differ. And it's their decision, not yours on when to open source. They have their reasons even if they aren't explaining them to you.

embedding-shape

3 hours ago

> 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.

redlewel

3 hours ago

This exactly. Doesn't scream confidence that its still closed upon release.

usef-

7 minutes ago

Why? The creators have a strong open source background and it's work to properly open source.

fluidcruft

3 hours ago

People to tune in to the conference, probably.

bourbonproof

3 hours ago

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.

pjmlp

3 hours ago

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.

redlewel

3 hours ago

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.

mike_hearn

2 hours ago

There were competitors. Pascal and assembly, most obviously.

It was just a different culture. There was no expectation that everything should be free.

pjmlp

2 hours ago

In that regard yes, personally I think Mojo has lost its opportunity, but not due being commercial.

AMD/NVIDIA/Intel now having first class support for Python DSLs or GPU JITs for their APIs, and Julia as well.

jibal

2 hours ago

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 (yet ... it apparently will be later this month).

pjmlp

34 minutes ago

That one yes, the ones sold by all UNIX clone vendors definitely not.

In fact, GCC was largely ignored until Sun decided to split SunOS into two SKUs.

fluidcruft

3 hours ago

Their website has a banner suggesting news about open sourcing of the compiler at some Aug 18 convention.

oceansky

3 hours ago

AI generated first image does not give me much confidence.

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.

redlewel

3 hours ago

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

fwip

3 hours ago

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.

ainch

2 hours ago

I wouldn't say there was a pivot, AI development has explicitly been the goal since launch.

sph

2 hours ago

A lot of fancy words to say this is slop.

Forgeties79

2 hours ago

Oh wow a business pivoted to AI what a shocker lmao (not directed at you/mocking you, to be clear)

bourbonproof

3 hours ago

I spotted the exact same thing with the AI image. makes the whole thing immediately feel cheap, it's wild

winding

2 hours ago

They’ve had this branding for some years, at least since 2023. I doubt at that time it was fully AI generated, although I have no proof of it. I always looked at it as being heavily AI inspired.

BeetleB

43 minutes ago

> makes the whole thing immediately feel cheap, it's wild

Hard to decide if the blog post is wild, or people's visceral reactions to it.

I've said it before: I believe the obsession in trying to figure out if something is AI generated will soon be classified as a mental disorder.

flexagoon

an hour ago

> Lastest OpenCV 5 release notes also had a lot of LLMisms.

Yeah, that really made me triple-check if I visited a fake SEO spam website instead of the official OpenCV one. The fact that their blog looks exactly the same every single low-effort AI content farm doesn't help either.

galonk

3 hours ago

"Normal" keeps getting more and more depressing.

Did they think that image would make them look fun or interesting? Because it's exactly the opposite.

FrustratedMonky

2 hours ago

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.

So maybe an AI image isn't the worst.

andy99

2 hours ago

People who work with AI all the time should be the most finely tuned in to how sloppy it looks and when to use it and when not.

jibal

2 hours ago

> I guess that's the new normal.

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.

derbOac

an hour ago

Is Mojo being a superset of Python still part of its projected feature set?

I tried Mojo a bit early on and decided to come back to it when it was more complete, and in the interim I read some comments somewhere that the superset-of-Python part was being walked back from.

On https://mojolang.org/docs/roadmap/ it's stated (Phase 3) that "Mojo may or may not evolve into a full superset of Python, and it's okay if it doesn't."

I feel like that "full superset of Python" part was part of the appeal of Mojo.

Personally I'm kind of tired of 97% python-compatible this-and-that. Python itself has enough of a history of incompatibility and the cognitive overhead in switching might be easier with just moving to a totally different language. But maybe not — it depends on the details I guess.

Honestly reading through the documentation more and more I'm more and more confused about what the 1.0 release actually means.

spprashant

an hour ago

They moved the goalposts. I think the landscape has changed since their initial Python superset pitch.

It seems like a deliberate pivot towards creating an AI-era language which make GPU programming as easy as writing Python.

usef-

4 minutes ago

To be fair, translation plays to the strengths of AI, so there's less benefit to being an exact superset.

minraws

3 hours ago

> 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.

melodyogonna

18 minutes ago

My guess is that the compiler will be opened next week at Modcon. Honestly? I'm surprised Mojo 1.0 is being released now; I had thought it would be released at Modcon along with the compiler source code, but oh well, 18th August isn't far now.

rirze

2 hours ago

It's probably very messy and not a great baseline for outside contributors to start create PRs.

That's the favorable interpretation, atleast.

minraws

an hour ago

Ladybird is Open Source and doesn't accept outside contributions any more same with sqlite and many other projects. Lots of Google's oss projects also are not very open to contribution.

At this point I find it deeply troubling that it isn't open source. I respect Chris I know folks who have worked with him and but at the end of the day I feel too weird about this entire closed source programming language thing.

If we complain to Nvidia about there weird closed source limitations, I think Mojo is just as bad. You don't even know what your compiler might be doing, and if it does something wrong you can't fix it, you now have to file a bug and wait until the gods from above come to your rescue.

I have had similar issues with drivers, I have faced soo many driver bugs in my work and the answer is always write more code that works around it somehow, this warp level is bad, this feature doesn't work with these values, etc. etc. Why can't I fix them, I have often on Linux just pinged the Mesa team about driver bugs with a rough draft of a patch and gotten it fixed, I can even patch and run it myself when I am in a hurry.

I feel like atleast making stuff, source available like Unreal should be the baseline for any "core" software where a bug could possibly be a major blocking issue for a developer. Windows and Mac are very bad with this.

Mac's CoreML has had soo many bugs over the last couple years I have had to email someone I know at the company to get them fixed or try to get into contact with someone.

Intel's drivers have had bugs too but I have had more contacts there which is a wash. AMD well it's AMD...

Either way closed software sucks I don't want to use fully closed stuff unless I don't have a choice people can make what they want of it. I don't really care.

I care much less about just foss.

akshitgaur2005

2 hours ago

They could go the sqlite route for it then, no outside code but let us have a look

alberth

4 hours ago

So is the language itself proprietary licensed, with standard library Apache 2?

Am I understanding the current state of things correct?

twsted

an hour ago

Nothing but respect for Chris, and I understand why founders take these deals. But an acquihire usually means the product is the part that gets left behind, and that's the part I cared about.

xiphias2

3 hours ago

Mojo may be interesting to me, but they should really split it from Max, which is some closed stuff I'm not interested in.

They should show some performance comparisions between PyTorch and Mojo, PyTorch+kernel compilation + Triton vs Mojo, ThunderKittens vs Mojo.

embedding-shape

3 hours ago

> 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.

geodel

an hour ago

They kind of did. It has a separate website now [1] . All the docs, announcements, roadmap, some comparisons as you asked are there. So they do seem to be working towards separation.

1. https://mojolang.org/

pbronez

2 hours ago

Aren’t they already separated? Max is an inference runtime, written in Mojolang, which uses the MLIR compiler chain to target diverse accelerator hardware.

cuzezzzbbfofai

an hour ago

Apparently they'll be open sourcing it on August 18th, one week from now.

tyre

an hour ago

> following the standards of how mature languages (e.g. C++) evolve over time

This gave me a chuckle. When I think of languages evolving their standards, I do think of C++. But not, you know, in a good way.

perarneng

3 hours ago

The main downside is that usually I only choose languages that the LLM is extremely good at. (however I avoid dynamically typed).

But I hope they succeed, it's a very interesting approach. Then I will jump on it later on. S

nylonstrung

2 hours ago

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

oceansky

3 hours ago

Are there any benchmarks on which languages models perform best?

charlieyu1

3 hours ago

Interesting. Heard about Mojo a few years now, never really tried it. My Python brain cannot really write C++ or Rust but still need the performance.

seanw444

3 hours ago

You may have heard of it already, but Nim has existed in this space for some time.

mathverse

3 hours ago

Nim could do better with more than just 1 or 2 brilliant developers

raytopia

an hour ago

Take a look into numba, you add a decorator to your function and it turns it into compiled code.

jax_bro

2 hours ago

closed source ngmi

beanjuiceII

3 hours ago

never has their been a language release so uninspiring

r_lee

2 hours ago

the 1.0 release of Mojo, it's a pretty big event, of course first thing I'm greeted with is an AI slop image on the top of the blog post

awesome

netdur

2 hours ago

like finding a rock of gold underground and tossing it away because it’s dirty?

mono442

4 hours ago

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.

catoc

3 hours ago

Pointless? If compiled mojo is faster, more memory-safe, and more hardware independent, that doesn’t seem pointless at all to me.

(And now in the age of LLMs, the barriers to get started with a new programming language are lower than ever)

nylonstrung

2 hours ago

Do you know CUDA or Triton? The point of Mojo was to replace GPU kernel programming langs with a Pythonic one that was more familiar

well_ackshually

2 hours ago

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".

Conscat

2 hours ago

It's not true that Nvidia doesn't care about CUDA backwards compatibility. The invention of TileIR was motivated entirely by that problem. GPU architectures are supported by the full tool suites for at least 10 years by CUDA (that's longer than they are for graphics).

Nvidia is also a major contributor to MLIR, which they use for TileIR and ClangIR, so should a compatibility break occur it wouldn't be entirely up to Mojo to fix it.

tfrancisl

4 hours ago

this language predates the rise of "AI" (you probably mean harnessed LLMs, but I'll forgive you) by several years. This is the 1.0 release.

winding

3 hours ago

This is the team behind MLIR, they have been in this field for 10 years or so.

ainch

2 hours ago

Does it? Mojo was announced 6 months after ChatGPT was released.

jhatemyjob

2 hours ago

Sounds like you're just lazy. Which is fine. You'll probably have a okay career. But not a great one.