4 ms·
Congratulations on a timeless library that is “just there”, doing what it does as reliably as ever.
by MontagFTB 4y ago
Congratulations on a timeless library that is “just there”, doing what it does as reliably as ever.
- INTPenis 4y agoYeah but who's going to write the future rust replacement?
- bobthebuilders 4y agoRust is definitely the worst language for this, writing curl in C++ would unlock memory and type safety while not throwing 30 years of language design out the window.
- sph 4y agoThe worse thing than rewriting curl in Rust, would be to rewrite it in C++. Leave it in C, or if you really have to, choose a safe language for the next 25 years. C++ ain't it.
- tlamponi 4y agoYou really don't need to throw out all at once, you can just replace those components that profit most from rust guarantees, like where you parse external untrusted inputs first, with FFI one can then integrate that in the current code base without any calling overhead. Rinse repeat with next thing you profit most one, i.e., more like a Ship of Theseus process. Doesn't even stops at C projects, we integrate rust code for perl using our perlmod crate: https://git.proxmox.com/?p=perlmod.git;a=summary https://git.proxmox.com/?p=perlmod.git;a=summary E.g., our OpenID Connect integration was done once in rust, and then integrated in our older, still mostly perl based projects using perlmod: https://git.proxmox.com/?p=proxmox-perl-rs.git;a=blob;f=pve-rs/src/openid/mod.rs;h=8572221fd3901e9aec04f31761d3f8b44b94eb81;hb=HEAD https://git.proxmox.com/?p=proxmox-perl-rs.git;a=blob;f=pve-... (fyi,above is just the "glue" code, the proxmox-openid stuff is in its own crate in the proxmox workspace).1 There exists something for python too, called pyoxide IIRC.
- tlamponi 4y agoSeems Daniel got you already covered, albeit it's more co-existence, as you can select a rust based backend for curl: https://daniel.haxx.se/blog/2022/02/01/curl-with-rust/ https://daniel.haxx.se/blog/2022/02/01/curl-with-rust/
- INTPenis 4y agoOh snap, definitely a step in that direction. I didn't know about that so to me the playing field was open for a curl replacement in rust to take off.