chrislattner
No user record in our sample, but chrislattner has activity below (stories or comments). Likely we have partial data — the full bulk-load will fill profiles in.
No user record in our sample, but chrislattner has activity below (stories or comments). Likely we have partial data — the full bulk-load will fill profiles in.
Indeed, this fall 100%
If you want the fastest open source implementation on Blackwell and AMD MI355, check out Modular's MAX nightly. You can pip install it super fast, check it out here:…
Thank you for the kind words! Are you saying that AI model innovation stopped at GPT-2 and everyone has performance and gpu utilization figured out? Are you talking about NVIDIA Hopper or any of the rest of the…
Modular/Mojo is faster than NVIDIA's libraries on their own chips, and open source instead of binary blob. See the 4 part series that culimates in https://www.modular.com/blog/matrix-multiplication-on-blackw... for…
The Mojo discord and forums are all listed here: https://www.modular.com/community
Mojo doesn't have C++-like exceptions, but does support throwing. The codegen approach is basically like go's (where you return a bool + error conceptually) but with the python style syntax to make it way more ergonomic…
Sure, I wasn't trying to start a fight either, I was just sharing my experience and opinion on having worked on both. Mojo (and C++) have closures, for example c++ does lambda type inference without a constraint solver.…
Thanks, we'll update that. We shifted to putting Mojo into Compiler Explorer rather than having our own similar-but-different thing.
Mojo has overloading, generics and a much more advanced type system than Swift (dependent and linear types etc), and compile time in all phases is very important. The Mojo design seems to be working well - it gives…
Bidirectional constraint solving. It's bad for compile time but even worse for predictable diagnostics. Mojo does contextual resolution, but it works more similar to how C++ resolves initializer lists etc.
Mojo learns a lot from the mistakes in Swift, including this one. Mojo compiles much faster and doesn't have exponential time type checking! :)
Exceptions in Mojo are just syntax sugar for Result types. You don't have to use them if you don't want, and the overhead is not like C++ exceptions.
Thank you, that's not entirely wrongbut not the full picture. Our initial explanation had two problems actually, 1) we were "ambitiously optimistic" (different way of saying "ego-driven naïveté" perhaps :) ) and 2) the…
Thank you for all the great interest in the podcast and in Mojo. If you're interested in learning more, Mojo has a FAQ that covers many topics (including "why not make Julia better" :-) here:…
Super impressive app and experience, it is incredible that you can get Swift to do this with such interactivity! Rebuilding Swift to be interpreted is a bold move, -Chris
For more details on what MAX includes, please check out the MAX changelog: https://docs.modular.com/max/changelog/ -Chris
Great post @fnands!
Please reach out to us to talk through it, I'm sure there's a way to work it out.
If you're interested in compiler nerdery, you should totally check out the source code, you'll see just how much we meant by "Syntactic sugar for MLIR" :-) A relatively accessible example is the `Int` type:…
We totally want to see Mojo go into all these places! It's just that Modular can't fund use of Mojo in (eg) gamedev or embedded development (at least not in the foreseeable future). Open sourcing the implementation is a…
You're right that Mojo is a completely general purpose programming language. Community members are already building gui libraries and serving stuff etc. It might not be the best thing, but here's the rationale for why…
Awesome, we'll be releasing a bunch more, but this is a pretty exciting starting point. The standard library has a lot of the lowest level details, and shapes most of the language - because so much of Mojo is library…
As far as I know, the Mojo implementation is doing the same algorithm as the baseline rust implementation. The person commenting on that is complaining about the rust impl as well.
LLVM has an autovectorizer which is quite good, but such tech is limited because (eg) it can't change memory layout. Speaking as someone who has spent more than 20 years writing compilers (e.g. LLVM, MLIR, etc), my…
Modular is enabling all of the above for different audiences. MAX provides an operator-graph level abstraction like PyTorch or JAX have, and we expect a bunch of high level libraries like nn.module to get built out over…