Chris Lattner
๐ค SpeakerAppearances Over Time
Podcast Appearances
The downside of that is you don't get the benefits of Mojo for those packages, right?
And so they'll run as fast as they do in the traditional CPython way.
But what that does is that gives you an incremental migration path.
And so if you say, hey, cool, well, here's a, you know, the Python ecosystem is vast.
I want all of it to just work.
But there's certain things that are really important.
And so if I'm doing weather forecasting or something, well, I want to be able to load all the data.
I want to be able to work with it.
And then I have my own crazy algorithm inside of it.
Well, normally I'd write that in C++.
If I can write in Mojo and have one system that scales, well, that's way easier to work with.
Yes, it's complicated.
I mean, this is what we do.
So, I mean, we make it look easy, but it is complicated.
But what we do is we use the CPython existing interpreter.
So it's running its own bytecodes, and that's how it provides full compatibility.
And then it gives us CPython objects.
And we use those objects as is.
And so that way, we're fully compatible with all the CPython objects and all the, you know, it's not just the Python part, it's also the C packages, the C libraries underneath them, because they're often hybrid.
And so we can fully run and we're fully compatible with all that.