Top
Best
New

Posted by sbt567 1 day ago

Mojo 1.0 Beta(mojolang.org)
355 points | 222 commentspage 2
andriamanitra 5 hours ago|
The changelog looks reasonable, seems like the language is moving in the right direction. I'm excited to try it out once it's open sourced. The dependency on glibc is an unfortunate limitation as it means you can't install Mojo on musl-based systems.

[1] https://mojolang.org/releases/v1.0.0b1/

taylorallred 19 hours ago||
I know Mojo is aimed at ML, but I'm actually really interested in trying it for game development :)
totalperspectiv 16 hours ago|
Me too! I've been using it for bioinformatics related work, and it is absolutely fantastic. I can't wait for it to hit fully open source status so it can be easily recommended.
momojo 14 hours ago|||
I work in bioimaging. What kind of bioinformatics are you doing that requires mojo level power?
totalperspectiv 13 hours ago||
"requires" is a strong word, but I implemented an alignment kernel that can do alignments on the GPU.

Overall I think there is going to be a lot of "old" gpu compute hanging around, and now that writing kernels is a lot easier than it has been, we might as well try and see what algorithms we can get working there.

I originally picked up Mojo for the SIMD, not for the GPU kernels. The SIMD usability in Mojo is outstanding.

Paper on the tool I wrote: https://doi.org/10.1093/bioadv/vbaf292

momojo 6 hours ago||
I might have to look into mojo.

What's "alignment" in your context. In bioimaging it usually refers to aligning something to a reference atlas (like the Allen Reference Mouse Brain Atlas) or aligning two microscope channels (like the red channel and green channel)

simplyvibecode 16 hours ago|||
Full open source Mojo 1.0 coming this fall!
Timot05 1 day ago||
I’m relatively new to programming but I wish they had used a functional language syntax rather than an object oriented one as the basis for mojo.

From my experience, AI revolves a lot around building up function pipelines, computing their derivatives, and passing tons of data through them; which composability and higher order functions from functional programming make it a breeze to describe.

I also feel that other fields than AI are moving towards building up large functional pipelines to produce outputs, which would make mojo suitable for those fields as well. I’m building in the space of CAD for example and I’d love to use a “functional mojo” language.

Revanche1367 1 day ago||
The vast majority of real world ML code today is written in languages like Python and C++. Relatively few people outside of academia and online forums are functional language enthusiasts. The industry is also looking like most actual coding is going to be done by LLMs going forward, so it makes little sense to design new languages with a niche potential user base since LLMs need a ton of training data. I’m think that was a factor in deciding to base mojo on Python along with the other reasons they state.
Timot05 1 day ago||
agree with all of this. Though i'd say: since the language is mostly read by humans rather than written, in my opinion, it makes even more sense to have a language syntax that actually matches intent. In the case of Machine Learning, it's mostly connecting functions together and acting on them, which matches functional syntax. LLMs are also already very effective at writing ML-inspired syntax (like ocaml or f#) as they have plenty of data to train on, making llms effective from day one if a similar syntax was chosen.
arikrahman 1 day ago||
I'm in the same boat, this would've been in the family of the first language that neural nets and AI were created with back decades ago, Lisp. Coming from the awesome project of Swift, which to their credit, was a massive undertaking to convince Apple execs, I was still hoping for a functional language approach like Haskell with the practicality of Clojure.
dllu 1 day ago||
I remember reading about this 4 years ago as the new Chris Lattner project and was super excited, though a little skeptical.

I think that nowadays with vibe/agentic coding, high performance Python-like languages become ever more important. Directly using AI agents to code, say, C++, is painful as the verbose nature of the language often causes the context window to explode.

boxed 1 day ago|
Not to mention that C++ basically can't be made to be safe. But Rust is probably fine.
pjmlp 20 hours ago||
In theory that is the idea behind profiles, in practice it remains to be seen what will they deliver until C++29, and if matters by then.

Microsoft is invested into using AI for C++ code review, for example.

coppsilgold 17 hours ago||
Python is basically the master glue language at this point.

If more than a few percent of execution time is spent in Python you are probably doing it wrong.

Personally I don't even understand why Cython is a thing, just write performance critical functions in other languages:

<https://pypi.org/project/rustimport/>

<https://pypi.org/project/import-zig/>

Note that you can even start threads in those languages and use function calls as pseudo-RPC. All without an overly complex build system.

sirfz 15 hours ago||
Cython is a no-brainer really. You write the same language with immense speedup (matching what the "other languages" can achieve at much less effort).

Also tools like numba can beat them all at way less effort.

Imho, dropping into other languages should be the last resort in any project.

MohamedMabrouk 16 hours ago|||
Mojo aims to be this (other language) arguably with easier programming model that rust, familiar syntax to python devs, and a modern design in general. Its stated goal now, is the easiest way to extend python. it provides the same interface for zero-hassle import of .mojo files
physicsguy 16 hours ago|||
Cython and PyBind and Nanobind are good for wrapping an existing library written in C++ and crafting an interface that doesn’t feel like it’s a C++ one. They were a big step from ctypes and SWIG
pjmlp 6 hours ago||
Plus, even if it has a Perl like feeling to it, C++26 reflection will make this even easier.

Already available on GCC 16.

fiedzia 11 hours ago||
> If more than a few percent of execution time is spent in Python you are probably doing it wrong.

Every program that starts with 1% of Python writes more Python and gets to 20,40, 60 and than 99% of it.

pjmlp 1 day ago||
Still phase one, doesn't do native Windows.

Meanwhile Julia is more mature for the same purposes, and since last year NVidia is having feature parity between Python and C++ tooling on CUDA.

Python cuTile JIT compiler allows writing CUDA kernels in straight Python.

AMD and Intel are following up with similar approaches.

So will Mojo still arrive on time to gain wider adoption?

Time will tell.

chrismsimpson 1 day ago||
I do wonder if Mojo was a great idea just a little too late to the party. Porting ‘prototypes’ from Python to lower level languages is fairly trivial now with LLMs.
msaelices 15 hours ago|
Modern LLMs are perfectly capable to learn the syntax of a new language on the fly and write great Code. E.g. there is an official Mojo syntax skill you can use and works well
insumanth 1 day ago||
I was excited when Mojo launched and thought it might grow big quick. I don't see much traction. The pitch is compelling. What could be the issue?
kstrauser 1 day ago||
I have no time for or interest in proprietary compilers. The standard library is Apache 2, but the license link on their home page is to a long terms of service thing. I’d like to be wrong because it looks interesting. Until then, this doesn’t exist in my world.

I bet that’s true for a great many people. There are too many wonderful FOSS languages to bother with one you can’t fix or adapt or share.

samuell 1 day ago|||
As someone who would have strong reasons to invest time in Modular (simple high performant language for implementing bioinformatics scripts), I would say primarily the worry that development might be too tied to Modular, the startup behind it, which eventually might pivot into other priorities.

One would want to see either a strong community build up around it, or really hard evidence for a long-term commitment to the language from Modular. And the latter will take a long time to be assured of I think.

Also, editing tools need to catch up before very wide adoption of a language with a lot of new syntax.

pjmlp 1 day ago|||
- Doesn't support Windows, which is what many companies give their employees, outside Silicon Valey like culture

- The MLIR approach, which was also designed by Chris Lattner while at Google, has proven quite valuable to create Python JIT DSL

- The Python ecosystem now being taken seriously by the main GPU vendors, thanks to MLIR, as all their proprietary compilers are based out of LLVM

- Others remember Swift for Tensorflow

williamstein 1 day ago|||
Mojo is still NOT open source (the standard library is but not the compiler). Open source is table stakes for a modern programming language.
xiphias2 13 hours ago|||
It's a language that wanted to make money from the start.

For example you need to use some Mojo Max library to have fast optimized LLM kernels, but at that point you can just stay with Python that has fast optimized LLM kernels, like flashinfer.

tweakimp 1 day ago||
When it was announced it was not generally available for everyone to try out. There was a waitlist phase.
rienbdj 6 hours ago||
Does anyone know if Mojo is more suitable for functional programming that Python?

Things like optimizing away object allocations, pure function inlining, tail call optimization?

jadar 9 hours ago|
Congrats to Chris Lattner and crew! Seems like a neat project. I listened to him talk about Mojo on some podcast a while back and was really impressed. Swift was a runaway success, and I hope he can pull it off again with Mojo! :)
More comments...