Earlier quoted context omitted.
This is exactly what I was trying to figure out. It seems like the answer is no at this time.
From their FAQ https://docs.modular.com/mojo/faq.html "Will Mojo be open-sourced? Yes, we expect that Mojo will be open-sourced. However, Mojo is still young, so we will continue to incubate it within Modular until more of its internal architecture is fleshed out. We don’t have an established plan yet. Why not develop Mojo in the open from the beginning? Mojo is a big project and has several architectural differences…
Mojo – a new programming language for AI developers
91–100 of 272 posts
Re: Mojo – a new programming language for AI developers
#92There are a bunch of questions about Julia, so I'll do my best to give a short answer to a very long and complicated topic. Up front, Julia is a wonderful language and a wonderful community, I am a super fan. That said, Mojo is a completely different thing. It is aligned with the Python community to solve specific problems outlined here: https://docs.modular.com/mojo/why-mojo.html Mojo also has a bunch of technical a…
Are you still doing any work with Swift and ML, or not anymore?
Re: Mojo – a new programming language for AI developers
#93There are a bunch of questions about Julia, so I'll do my best to give a short answer to a very long and complicated topic. Up front, Julia is a wonderful language and a wonderful community, I am a super fan. That said, Mojo is a completely different thing. It is aligned with the Python community to solve specific problems outlined here: https://docs.modular.com/mojo/why-mojo.html Mojo also has a bunch of technical a…
Why is "no GC" an advantage for something aimed at such high-level tasks?
Re: Mojo – a new programming language for AI developers
#94Or it's port to TypeScript: https://mojojs.org
Re: Mojo – a new programming language for AI developers
#95Are you afraid that you're going to "inherit" the issues the python ecosystem has through your goal of full compatibility? Or is Mojo more like Numba, in that only parts of python will actually be supported for full acceleration? At least your docs[1] seem to say so.. -- [1]: https://docs.modular.com/mojo/why-mojo.html#intentional-diff...
While python the language is easy, and in many ways great for its original purpose as a teaching language, I'll take note of the few ways that Python ML suffers:
- pip hell. Really, having globally installed dependencies was great for the 90s and is terrible now that disk space is more or less a non-issue relative to dependencies. Venv/conda which do sneaky things e.g. with your shell is super dangerous (https://twitter.com/garybernhardt/status/1653171980483575808), and a misstep can trash your system especially when it has to deal with wheels with system-level dependencies (looking at you, tensorflow -- probably half of the reason why people moved to pytorch). Poetry sounds nice. It's been a while since I've checked in with the python ecosystem. Are ML people using that yet?
- Subpar deployment. Let's remember that Containerization basically exists because Python does not have an ops story.
- Subpar integration with web. You are forced to either create a microservice, or, spin it up within Django (nobody really does this). Then you typically have to pull in a bunch of sidecar processes (Redis, Celery, etc.) just to get queuing of your web jobs correct.
- Poor concurrency. Sure, you can run your tensorflow code in an awkward 'with' statement but I think there are very few ML practicioners who could really explain to you what that with is doing. That GPU is actually fundamentally an asynchronous entity. And god help you if you want to run and debug async python.
- No distribution story. Sure, the big guys are able to spin up, e.g. Horovod, but it's not really a thing for someone with less resources for a hot second on a few machines, and again, god help you if something goes wrong and you need to debug it.
Does Mojo solve any of these issues? From a cursory look, it looks like no.
Re: Mojo – a new programming language for AI developers
#96* Will Mojo be able to generate portable, standalone binaries and libraries?
* If so, will the size of the binaries / libraries be similar to C / Rust binary sizes?
These are pretty big pain points for both JAX and Julia (Julia is slowly making progress on this front though)
Re: Mojo – a new programming language for AI developers
#97Re: Mojo – a new programming language for AI developers
#98Earlier quoted context omitted.
Why is "no GC" an advantage for something aimed at such high-level tasks?
Yeah funnily enough I think "no GC" would be a much better feature in Julia, which would make it a great language for real time applications.
Re: Mojo – a new programming language for AI developers
#99Re: Mojo – a new programming language for AI developers
#100I'm curious about the teasing around open source. Obviously the amount of money and the slick product launch dictate a need to capitalize on this pooled expertise. Don't want to give away the game to the hyperscalers.
I wonder what the revenue and license models are going to end up looking like. A cloud of their own, professional services to HW manufacturers to optimize their performance, professional services to hyperscalers?
Curious if anybody has any ideas beyond the obvious.