| ▲ | adsharma 4 hours ago | ||||||||||||||||||||||
Missing: write static python and transpile to rust pyO3 which is at the top of the ladder. Some nuance: try transpiling to a garbage collected rust like language with fast compilation until you have millions of users. Also use a combination of neural and deterministic methods to transpile depending on the complexity. | |||||||||||||||||||||||
| ▲ | zahlman 4 hours ago | parent | next [-] | ||||||||||||||||||||||
> a garbage collected rust like language with fast compilation I don't know what languages you might have in mind. "Rust-like" in what sense? | |||||||||||||||||||||||
| |||||||||||||||||||||||
| ▲ | tda 4 hours ago | parent | prev [-] | ||||||||||||||||||||||
One thing with python is that usually I will use one of the many c based libraries to get reasonable speed and well thought out abstractions from the start. I architect around numpy, scipy, shapely, pandas/polars or whatever. So my code runs at reasonable speed from the start. But transpiling to rust then effectively means a complete redesign of the code, data structures, algorithms etc. And I have seen the AI tools really struggle to get it right, as my intent gets lost somewhere. So what I do now (since Claude Code) is write really bare bones (and slow) pure python implementation (like I used to do for numba, pypy or cython ready code), with minimal dependencies. Then I use the REPL, notebooks and nice plotting tools to get a real understanding of the problem space and the intricacies of my algorithm/problem at hand. When done, I let Claude add tests and I ask it to transpile to equivalent Rust and boom! a flawless 1000x speed upgrade in a minutes. The great thing is I don't need to do the mental gymnastics to vectorize code in a write only mode like I've had to do since my Matlab days. Instead I can write simple to read for loops that follow my intent much better, and result in much more legible code. So refreshing! And with pyO3 i can still expose the Rust lib to python, and continue to use Python for glue and plotting | |||||||||||||||||||||||
| |||||||||||||||||||||||