Mojo 1.0

392 points202 comments18 hours ago
swiftcoder

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

show comments
redlewel

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.

show comments
oceansky

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.

show comments
tomburgs

What in the world would posses the modular team to attach those horrendous AI generated thumbnails to each blog post? It makes it feel cheap, even though I know the project has some really serious technical expertise behind it.

show comments
ubercore

This probably has a simple answer, and is something I can easily google. But it's always been in the back of my mind, what optimizations would be possible if you took actual python code and forced 100% type annotation. Could you meaningfully speed that up at the interpreter or with some pre-processing or compilation?

show comments
derbOac

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.

show comments
minraws

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

show comments
SP3269

From Mojo Wikipedia article: ``` The intention behind Mojo is to bridge the gap between Python’s ease of use and the fast performance required for cutting-edge AI applications. ```

Basically, same raison d'etre as that of Julia.

show comments
twsted

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.

show comments
alberth

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

Am I understanding the current state of things correct?

jdnier

See their in-depth vision doc here:

https://mojolang.org/nightly/docs/vision/

cuzezzzbbfofai

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

adsharma

Given the shared heritage with MLIR, one way to think about mojo: higher level IR, but still an IR. Rpython for GPUs.

But mojo is a superset, not a subset. So why not use a subset, infer what you need and generate mojo?

I've never seen this question actually presented to the company and discussed in more detail.

joddystreet

a systems language that reads like python is great!

python superset would have been perfect.

I do hope the language thrives and gets a community.

All the best to the modular team.

xiphias2

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.

show comments
AbuAssar

first impression based on the hero image is that this is a new model for image or video generation!

beanjuiceII

never has their been a language release so uninspiring

whimsicalism

Sorry Chris, love you but will not use a closed language.

show comments
perarneng

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

show comments
charlieyu1

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.

show comments
tyre

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

bobajeff

I wish Modular/Qualcomm good luck with this. We would be well served with a good alternative to Cuda. I will be looking at Modcon to see how serious they are with Mojo's ecosystem. (Hopefully it won't be yet another SYCL).

r_lee

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

show comments
melodyogonna

Hurray!

hnfwd5lqmp

Clear, useful, done

ltbarcly3

"We arbitrarily decided we are at 1.0 now, this is a major milestone."

jax_bro

closed source ngmi

mono442

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.

show comments
mojo-10

(A) MOJO should have used rust.

(B) MOJO should should have used Nvidia.