| I 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. |
| |
| ▲ | FrustratedMonky 3 days ago | parent [-] | | I 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 3 days ago | parent [-] | | > 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 2 days ago | parent [-] | | ? 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/ Maybe it is just marketing hype that you disagree with. But right on the main page it says "Mojo is Python++". | | |
| ▲ | almostgotcaught 2 days ago | parent [-] | | > The marketing and web site materials clearly show how they are using the Python interpreter and extending Python. brother you have literally not a single clue what you're talking about. i invite you to go ask someone that currently works there about whether they're "using the Python interpreter and extending Python". | | |
| ▲ | FrustratedMonky a day ago | parent [-] | | From Docs, https://docs.modular.com/mojo/manual/python/ "This is 100% compatible because we use the CPython runtime without modification for full compatibility with existing Python libraries." At this point you need to either explain your objection, or just admit you are a troll. You haven't actually at any point in this exchange offered any actual argument beyond 'duh, you're wrong'. I'd be ok if you actually pointed to something like 'well technically, the mojo parts are compiled differently', or something. You say you worked there, but you're not even looking at their website. Creator Chris Lattner discussing why they used Python.
https://www.youtube.com/watch?v=JRcXUuQYR90 Start at minute 12. "Mojo is a very extended version of Python". | | |
| ▲ | almostgotcaught a day ago | parent [-] | | Are you even a programmer? Do you know what any of these words mean? > using the CPython interpreter as a dynamic library (shown as libpython.dylib in figure 1). They're embedding the python interpreter not extending it - just like everyone and their mother has been able to do for decades https://docs.python.org/3/extending/embedding.html I repeat: you have no idea what you're talking about so in reality you're the troll. | | |
| ▲ | FrustratedMonky a day ago | parent [-] | | You're really splitting some very thin pedantic hairs. You're problem isn't with me, you are quibbling with there own marketing materials. Go complain to marketing if they are using the words that you disagree with. Everything I've posted is directly from Mojo's website. You: "Well, technically they are embedding the interpreter, so all the surrounding code that looks exactly like python, and we promote as being compatible with python, and promote as extending python. My good sir, it is not really python. That is just a misunderstanding with marketing. Please ignore everything we are clearly making out as an important feature, totally wrong". They clearly promote that they are extending python. What is your problem with that? How is that wording causing you to seize up? I'm aware of what is technically happening. Where did I ever say anything that was not directly from them? Do I really need to write a thesis to satisfy every ocd programmer that wants to argue every definition. Were you let go because of an inability to think flexibly? Maybe too many arguments with co-workers over their word choice? Does you're brain tend to get single tracked on a subject, kind of blank out in a white flash when you disagree with someone? Actually, I'm kind of convinced you're just arguing to argue. This isn't about anything. | | |
| ▲ | almostgotcaught a day ago | parent [-] | | > so all the surrounding code that looks exactly like python, and we promote as being compatible with python bro are you really thick? there is zero mojo code that is runnable python; take a look at https://github.com/modular/modular/tree/main/mojo/stdlib/std... mojo has zero to do with python. zilch, zero, nada. what they are doing is simply embedding the python interpreter and running existing python code. literally everyone already does that, ie there are a million different projects that do this same thing in order to be able to interoperate with python (did you notice the heading at the top of the page you linked is *Python interoperability* not *Python compatibility*). > This isn't about anything. it's about your complete and utter ignorance in the face of a literal first hand account (plus plenty of contrary evidence). > Were you let go because of an inability to think flexibly? let go lololol. bro if you only knew what their turnover was like you would give up this silly worship of the company. | | |
| ▲ | FrustratedMonky a day ago | parent [-] | | Sorry. I get it now. You're bitter. To be clear, I'm not a fan boy. I don't really know much about Mojo. I've watched some videos, checked out their website, thought it was interesting idea. The parent post was about alternatives to CUDA. I posted a 6 word sentence summarizing how Mojo is trying to bypass CUDA, and using Python. -> And you flipped out, that it isn't Python. Really? I checked out your link, sure does look like Python. But that is the point, all of their promotional materials and every Chris Lattner video, all sales pitches, everywhere. Everywhere, is Python, Python, Python. Clearly they want everyone one to know how closely tied they are to Python. It is a clear goal of theirs. But. I see now the pedantic hair splitting. Mojo 'Looks Like Python', they use the same syntax. "Mojo aims to be a superset of Python, meaning it largely adopts Python's syntax while introducing new features". But you say, they aren't modifying or extending CPython so this is all false, it is no longer technically Python at all. And I guess I'm saying, Chill. They clearly are focused on Python all over the place, to say that it isn't, is really ludicrous. You're down a rabbit whole of debating what is a name, what is a language. When is Python not Python? How different does it have to be, to not be? |
|
|
|
|
|
|
|
|
|