You need to rely on other people's code. Whether it std lib or not. Left pad is because of:
A) ease of modularization
B) problems with tree shaking
C) people want small easily understandable library
Which tbh works more often than not.
----
Stable ABI is a curse as much as blessing. Once you have stable ABI, you will never want to break it. Even if breaking ABI would be beneficial long term. See
You need to rely on other people's code. Whether it std lib or not. Left pad is because of:
A) ease of modularization
B) problems with tree shaking
C) people want small easily understandable library
Which tbh works more often than not.
----
Stable ABI is a curse as much as blessing. Once you have stable ABI, you will never want to break it. Even if breaking ABI would be beneficial long term. See
https://cor3ntin.github.io/posts/abi/
And if you desire Stable ABI there is option of exposing C API in Rust.
----
> So, essentially, the cargo system makes it easy to import weak code and hard to fix it later.
Hard for who? Cargo can easily fork a package and recompile it. It makes it harder for distros. But you can ship static linked dependencies, easily.