3 ms·
> Mojo is a variant of python. Lol this is how I know no one that pushes mojo on hn has actually ever used mojo.
by almostgotcaught 1y ago
> Mojo is a variant of python.
Lol this is how I know no one that pushes mojo on hn has actually ever used mojo.
- FrustratedMonky 1y agoYes, over simplifying the concept. what is wrong with that? If I post a thesis on compilers would that really help clarify the subject? Read the link for details. Is Mojo attempting to offer a non-Cuda solution? Yes. Is it using Python as the language? Yes. Is there some complicated details there? Yes. Congratulations.
- almostgotcaught 1y ago> Yes. Is it using Python as the language? You're completely wrong here. That's the "what's wrong with it".
- FrustratedMonky 1y agoI think you are missing the nuance between the different aspects of using the Python Interpreter, and integrating new functions with Python. And compiling to a different target. Would you say Iron Python is Not Python, and quibble about it? Is there some Python purist movement I'm not aware of? Should every fork of Python be forced to take Python out of its name? To say Mojo doesn't use Python, when clearly that is a huge aim of the project, makes me think you are splitting hairs somewhere on some specific subject that is not clear by your one liners. Key aspects of Mojo in relation to Python: • Pythonic Syntax and Ecosystem Integration: Mojo adopts Python's syntax, making it familiar to Python developers. It also fully integrates with the existing Python ecosystem, allowing access to popular AI and machine learning libraries. • Performance Focus: Unlike interpreted Python, Mojo is a compiled language designed for high-performance execution on various hardware, including CPUs, GPUs, and other AI ASICs. It leverages MLIR (Multi-Level Intermediate Representation) for this purpose. • Systems Programming Features: Mojo adds features common in systems languages, such as static typing, advanced memory safety (including a Rust-style ownership model), and the ability to write low-level code for hardware. • Compatibility and Interoperability: While Mojo aims for high performance, it maintains compatibility with Python. You can call Python functions from Mojo code, although it requires a specific mechanism (e.g., within try-except blocks) due to differences in compilation and execution. • Development Status: Mojo is a relatively new language and is still under active development. While it offers powerful features, it is not yet considered production-ready for all use cases and is continually evolving.
- almostgotcaught 1y ago> I think you are missing the nuance between the different aspects of using the Python Interpreter, and integrating new functions with Python What if I told you I used to work at modular? What would you say then to this accusation that I'm "missing the nuance"? The rest of this is AI crap.
- FrustratedMonky 1y agoI think then I'd have to go back to your original reply, and ask what your point was. What is it you are finding objectionable? These one liner "doh, your wrong", isn't clarifying. Do you really think Mojo is not based on Python? Or they are not trying to bypass Cuda? what is the problem? The rest might be marketing slop. But I'm not catching what your objection is.
- almostgotcaught 1y ago> Do you really think Mojo is not based on Python? what do you mean "do you really". it's not. full stop. what part of this don't you understand?
- FrustratedMonky 1y ago? Are we talking about same thing? Mojo, the new language for programming GPU's without CUDA? The marketing and web site materials clearly show how they are using the Python interpreter and extending Python. They promote the use of Python everywhere. Like it is one of the most hyped points. I think you are trying to quibble with, does the new functions get compiled differently than the rest of Python? So technically, when the Mojo functions are in use, that is not Python at that point? Or maybe you are saying that they have extended Python so much you would like to not call it Python anymore? Like IronPython, maybe since that gets compiled to .NET, you disagree with it being called Python? Or maybe to use the IronPython example, if I'm calling a .NET function inside Python, you would like to make the fine distinction that that is NOT Python at that point? It should really be called .NET? Here is link to docs. You worked there. So maybe there is some hair splitting here that is not clear. https://docs.modular.com/mojo/manual/python/ https://docs.modular.com/mojo/manual/python/ Maybe it is just marketing hype that you disagree with. But right on the main page it says "Mojo is Python++".