4 ms·
... and also now there's Mojo too (https://www.modular.com/mojo https://www.modular.com/mojo). Not the same but seems relevant.
by derbOac 3y ago
... and also now there's Mojo too (https://www.modular.com/mojo https://www.modular.com/mojo). Not the same but seems relevant.
- maegul 3y agoYea it’s gotten to the point where it’s a sub-domain of expertise in Python being on top of the various performance extensions/runtimes/hacks. Intuitively, numba and cython still feel like the most interesting/relevant. I recall talk a few years ago about the possibility of writing packages in “numba”. IE, targeting the subset of Python and numpy that numba supports. Occasionally I check in with numba’s releases and they seem to be slowly but surely supporting more of Python such that surely it will start to make sense to talk about the “numba” language. Has anyone got a tighter grip on whether this than I?
- BiteCode_dev 3y agoI would say the most popular way to speed up a python program today is not through a compiler anymore, but using rust for hot loops and maturin (https://pypi.org/project/maturin/ https://pypi.org/project/maturin/) for seamlessly use it in Python and provide packages. I get the benefit of being able to "just use python" and still gain a speed up though. Plus there are many situations with rust is no possible (no time to learn such a complex language, rust is not approved by the security team).
- tialaramex 3y agoThe other edge is where your heatmap is just all red, and so "speed up hot loops" isn't going to get it done, and at that point somebody needs to bite the bullet and {hire people who know / learn} an AOT language with good performance. or it turns out the reason the heatmap is all red is that you were solving categorically the wrong problem, e.g. you decided to use machine vision to figure out what's in the packaging, while your competitors are just scanning the EAN-13 barcode.
- BiteCode_dev 3y agoCareful though, while Mojo is exciting, it's very tied to the modular platform for now, unlike the other projects.
- gkbrk 3y agoAll the other options that were mentioned are open-source and available to public usage. They actually exist. Mojo on the other hand has an empty Github repo, no downloads, and no public access. You need to get approval from Modular Inc before you can even use a demo of Mojo. Clicking the "Get started with Mojo" or the "Request access" buttons take you to the same page with a form that asks your full name and email address, but giving them your personal info does not actually give you access to Mojo. It just gives you the following message until someone at Modular Inc vets your application. > We will contact you as soon as we are ready to onboard you into our early preview program. All the other options mentioned in this thread actually have downloads and repos that you can check out, and you don't need to fill an application form to "Request access". They exist, right now.
- derbOac 3y agoYeah I didn't mean to advocate for Mojo necessarily. I use Python for projects and like a lot about it, but often feel as if its implementations are kind of fragmented in many respects, and Mojo seems like it could potentially further that trend for me at least, at the current time. Other projects are certainly more open and established. For me personally what I want to see is a completely open, working, high-performance Python compiler that is fully compatible with official spec 100%, in the sense that you could take any code anywhere and it would work just as well on the official interpreter as on the compiler. Maybe this means creating an official Python 4.0 spec or something that's a superset of 3.0, or something, but right now I'm not sure I see anything quite like that. I could see Mojo being that eventually but you're right that at the moment it's far from that.