Rust & cargo do more than just compile. For example, it basically has buit-in ccache.
It is also easier to split large libraries into multiple crates, though an average project still uses more libraries than an equivalent C project. I wouldn’t be surprised if the “AI” also pulled in more libraries than needed, or has unnecessary library features enabled. I’m pretty sure that a cargo plugin for pruning unused libraries was featured on the rust blog, as a featured third-party plugin for a cargo release.
In C++ land, I lived in Qt for 20 years. It did… most things, so if you “just” imported Qt (or Boost or massive API environment of your choice) you could usually do most things “just” importing one or two additional external libraries. I frequently would split a system into “micro-ish-services” with each service importing one or a few of these novel external libraries, partly to isolate them so unexpected interference at least wasn’t coming from within the process, also as damage control incase one behaved badly it could be excised at runtime without taking down the larger system.
Rust feels even more like a case for cooperating microservices, but it does seem to bulk them up fast - faster than Qt, and that’s saying something.
Rust & cargo do more than just compile. For example, it basically has buit-in ccache.
It is also easier to split large libraries into multiple crates, though an average project still uses more libraries than an equivalent C project. I wouldn’t be surprised if the “AI” also pulled in more libraries than needed, or has unnecessary library features enabled. I’m pretty sure that a cargo plugin for pruning unused libraries was featured on the rust blog, as a featured third-party plugin for a cargo release.
In C++ land, I lived in Qt for 20 years. It did… most things, so if you “just” imported Qt (or Boost or massive API environment of your choice) you could usually do most things “just” importing one or two additional external libraries. I frequently would split a system into “micro-ish-services” with each service importing one or a few of these novel external libraries, partly to isolate them so unexpected interference at least wasn’t coming from within the process, also as damage control incase one behaved badly it could be excised at runtime without taking down the larger system.
Rust feels even more like a case for cooperating microservices, but it does seem to bulk them up fast - faster than Qt, and that’s saying something.