4 ms·
Does anyone actually use Mojo for anything? Or is it like Deno where the founder raised a bunch of money but the language will never ever find market fit?
by ilrwbwrkhv 2y ago
Does anyone actually use Mojo for anything? Or is it like Deno where the founder raised a bunch of money but the language will never ever find market fit?
- extr 2y agoIt's too new, they're still working on it. But if it's promised features materialize it's hard to imagine it won't gain an audience. And in general I wouldn't bet against Chris Lattner.
- nsingh2 2y agoThe last time I looked at Mojo it required a sign up to install, that killed my interest pretty fast. Though now it looks like you can just install it?
- zie 2y agoYup you can just install it now.
- 6gvONxR4sf7o 2y agoI don't use it for anything, but as it gets stable, I'd love to. I don't expect to even try it out for years, but don't think that means it's failed.
- toshinoriyagi 2y agoGiven how new it is, it isn't widely used yet. But there's always new packages being posted in the discord, and mojo's CPU performance is already competitive with PyTorch in a lot of benchmarks. GPU support is supposed to be coming sometime in the summer.
- cyber_kinetist 2y agoI think the main problem for Mojo is that it really doesn't make the hard part of writing HPC code that much easier. Maybe a bit better than C++ (ex. better compile-time metaprogramming, built in SIMD type) - but you still have to do the dirty work of writing the optimized SIMD kernels, which isn't going to be sexy given the nature of the problem. (Also... CUDA support when?) I think the main advantage of Mojo would be its tight integration with the Python ecosystem (can conveniently call Python from Mojo)... Given the atrocities with existing C/C++ build systems, guess this could be a much lower barrier for deep learning people to delve into HPC stuff?
- neonsunset 2y agoWriting SIMD routines can be quite easy, at least much more pleasant than using intrinsic mnemonics. My understanding is that Mojo's portable SIMD builds on top of LLVM vector MLIR dialect, which is good. If this is indeed true, it would make it competitive with C# cross-platform SIMD which usually means just creating variables typed as Vector128/256/512<T> and using either the regular arithmetic operators on them or VectorXXX.Shuffle/PairwiseSomething/etc. for SIMD-specific operations without ever touching mnemonics (those can be intermixed behind branches of if (Arm64?) if an ISA of your interest has a more specific instruction, and these still consume the same vector types). Example: https://github.com/dotnet/runtime/blob/7ffb9a44ab32cd96d5684c1560671695535ae2cb/src/libraries/Common/src/System/HexConverter.cs#L259-L322 https://github.com/dotnet/runtime/blob/7ffb9a44ab32cd96d5684... Even higher level abstraction can be built on top of that, e.g. Triton or ISPC style (just no one has done that yet, it's a relatively new addition to the language, the closest one is System.Numerics.Tensors which is C#'s own baby BLAS). I'm very interested in Mojo as it seems like one of the few options where moving away from C# wouldn't be a huge downgrade, giving all the performance bits while being built on top of LLVM, for now waiting until it is fully open-sourced and becomes a public project.
- cupofc0t 2y agoMojo doesn't use most of built-in dialects, they currently only use LLVM and Index dialect, as well as many custom dialects
- mhh__ 2y agoI would (as in, turn-key would use it tomorrow) but it's not open source yet.
- Yasuraka 2y agoThe stdlib is, as of a few weeks ago. The rest I presume will follow once they are sure of their MLIR moat
- chrisldgk 2y agoThis is an unfair side jab at Deno, it’s not being used as widely as Node (yet), but it’s the go-to edge runtime beside Cloudflare workers and the underlying system powering Supabase functions.
- ilrwbwrkhv 2y agoFair fair.. They are actually used far more than Mojo. However the amount raised makes it very hard to pull through.