Mojo 1.0

(modular.com)

228 points | by dayanruben 5 hours ago

20 comments

  • swiftcoder 3 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.

        • skavi 17 minutes ago
          I'd assume Mojo does more complex transformations at the MLIR level than Rust does at its MIR level.
        • giancarlostoro 1 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 1 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?
        • tyre 2 hours ago
          Oh nooooo, they fucked it up too. Why would someone make a language that’s whitespace sensitive? It’s confounding.
          • grim_io 15 minutes ago
            I never understood this.

            What kind of special whitespace requirements do people have?

          • BeetleB 1 hour ago
            To weed out programmers who don't indent.
          • syrrim 1 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 1 hour ago
              at the closing curly?
              • syrrim 1 hour ago
                Programmers look at the indentation.
                • larodi 35 minutes ago
                  this discussion is so dated...
                  • syrrim 9 minutes ago
                    llms prefer indents too
          • mplewis 2 hours ago
            It's really not that bad
        • usef- 50 minutes ago
          I didn't realise people still complained about this in 2026. When has it ever been an issue in use?
        • Fraterkes 1 hour 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 3 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.
      • mohamedkoubaa 8 minutes ago
        The value has been speculated on. It doesn't mean the value has materialized.
      • sgt 2 hours ago
        Wow, so Lattner became a billionaire. Pays to be in compilers.
        • woadwarrior01 1 hour 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?
        • 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.

        • ktm5j 46 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.
        • redlewel 3 hours ago
          This exactly. Doesn't scream confidence that its still closed upon release.
          • usef- 48 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 3 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 3 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 1 hour 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.
  • derbOac 1 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 1 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- 46 minutes ago
        To be fair, translation plays to the strengths of AI, so there's less benefit to being an exact superset.
  • 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 1 hour 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 1 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 3 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 3 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 3 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.

      • phoghed 38 minutes ago
        Finding some unit of the thing one can actually understand and using it to issue a shallow dismissal is canonically the most Hacker News possible comment. And the rest of the commenters generally love it.

        Not to worry though, if there’s nothing webshit accessible in the content there’s surely something wrong with the CSS to complain about!

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

    • jibal 2 minutes ago
      Who said anything about 4 months? Your "logic" seems to be that they are releasing it in 2026 and there are 4 more months in 2026 so they will be releasing it in 4 months. That's obviously flawed thinking. They will probably be releasing it coincident with their August 18 conference.
    • 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.

      • akshitgaur2005 2 hours ago
        They could go the sqlite route for it then, no outside code but let us have a look
      • minraws 1 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.

    • melodyogonna 59 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.
  • whimsicalism 8 minutes ago
    Sorry Chris, love you but will not use a closed language.
  • 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?

  • 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 1 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.
    • adityazero 3 minutes ago
      [dead]
  • twsted 1 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.
    • willseth 2 minutes ago
      $3.9 billion is not an acquihire!
  • 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 3 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?
  • cuzezzzbbfofai 1 hour ago
    Apparently they'll be open sourcing it on August 18th, one week from now.
  • tyre 2 hours 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.

  • 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 1 hour ago
      Take a look into numba, you add a decorator to your function and it turns it into compiled code.
  • ltbarcly3 16 minutes ago
    "We arbitrarily decided we are at 1.0 now, this is a major milestone."
  • jax_bro 2 hours ago
    closed source ngmi
  • beanjuiceII 3 hours ago
    never has their been a language release so uninspiring
  • melodyogonna 5 hours ago
    Hurray!
  • hnfwd5lqmp 2 hours ago
    Clear, useful, done
  • 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 3 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.