4 ms·
A programming language similar to Python that compiles to Rust or Go will be amazing.
by lucianmarin 6mo ago
A programming language similar to Python that compiles to Rust or Go will be amazing.
- amelius 6mo agoWhat benefit would it bring? There's already https://cython.org/ https://cython.org/
- mememememememo 6mo agoYou want to use the Go runtime for example
- adsharma 6mo agoCython uses C-API. This one doesn't.
- Hasnep 6mo agoSpy (https://github.com/spylang/spy https://github.com/spylang/spy) is an early version of this kind of thing. I believe it compiles to C though, kinda like Nim. Actually speaking of Nim, that's probably the most mature language in this space, although it's less pythonic than Spy
- emmelaich 6mo agoHere you are. https://github.com/google/grumpy https://github.com/google/grumpy Last commit was 9 years ago though, so targets Python 2.7.
- adsharma 6mo agoAmazing people still keep discovering it. And google search fails to surface working implementations. "Python to rust transpiler" -> pyrs (py2many is a successor) "Python to go transpiler" -> pytago Grumpy was written around a time when people thought golang would replace python. Google stopped supporting it a decade ago. Even the 2022 project by a high school student got more SEO https://github.com/py2many/py2many/issues/518 https://github.com/py2many/py2many/issues/518
- rubymamis 6mo agoMojo is a language with Pythonic syntax that compiles to fast machine code built by the creator of Swift: https://www.modular.com/open-source/mojo https://www.modular.com/open-source/mojo
- ModernMech 6mo agoHold up... did I miss something, is Mojo open sourced now? Edit: No it is still not open source. There are still same promises of open sourcing eventually, but there is no source despite the URL and the website claiming it's an open language. What's "open" here is "MAX AI kernels", not Mojo. They refer to this as "750k lines of open source code" https://github.com/modular/modular/tree/main/max/kernels https://github.com/modular/modular/tree/main/max/kernels This feels icky to me.
- melodyogonna 6mo agoThe compiler will be open-sourced in a few months.
- adsharma 6mo agoThere is a question of what benefit would it bring even if its open sourced? Static python can transpile to mojo. I haven't seen an argument on what concepts can only be expressed in mojo and not static python? Borrow checker? For sure. But I'm not convinced most people need it. Mojo therefore is a great intermediate programming language to transpile to. Same level of abstraction as golang and rust.
- melodyogonna 6mo agoPython has a performance problem. Most people may not need it, but many people do. Languages like Rust and Go are heavily adopted by Python programmers either trying to understand low-level concepts or looking for something more performant. And this is before we talk about the real selling point, which is enabling portable heterogenous compute.
- siwatanejo 6mo agoF# is very similar to python because it's based on indentation instead of curly braces. And with Fable you can transpile it to Rust (or Python even): https://github.com/fable-compiler/fable https://github.com/fable-compiler/fable
- debo_ 6mo agoNim looks a lot like Python with a first-class type system and compiles to many different targets, including wasm and C.
- adsharma 6mo agoStatic python as described in this skill. https://github.com/py2many/static-python-skill https://github.com/py2many/static-python-skill