4 ms·
> An extensive stdlib ensures decent performance: https://stackoverflow.com/questions/31548680/why-is-python-3-is-considerably-slower-than-python-2 https://stac
by progval 5y ago
> An extensive stdlib ensures decent performance: https://stackoverflow.com/questions/31548680/why-is-python-3-is-considerably-slower-than-python-2 https://stackoverflow.com/questions/31548680/why-is-python-3...
This example is about a language issue, not the stdlib. And it's only slower on purely computational code, which Python is known to be bad at anyway, as a tradeoff to avoid overflow issues.
> An extensive stdlib ensures stability: i'm not even sure how, with good version pinning it should always work, regardless of the it being std lib or otherwise.
Version pinning is a bad practice because it slows deployment of security updates. It also only works for end applications, as libraries cannot reasonably pin their own dependencies.
- cies 5y agoIn rust an int is an int, in Python this changes with versions. Std lib needs to change along. > Version pinning is a bad practice because it slows deployment of security updates. How is that not true for stdlibs? > It also only works for end applications, as libraries cannot reasonably pin their own dependencies. Really?
- codeflo 5y ago>> It also only works for end applications, as libraries cannot reasonably pin their own dependencies. > Really? At least not usefully if types from those dependencies appear on the API surface.
- progval 5y ago> In rust an int is an int And Rust ints can overflow. It's a tradeoff. >> Version pinning is a bad practice because it slows deployment of security updates. > How is that not true for stdlibs? Because, if without pinning, the package manager always gets the latest available version and installs it for all applications on the system once and for all. When pinning dependencies, system administrators need to wait for every single application to update its pin.
- DerArzt 5y agoDo we want to always get the latest version? The whole colors.js and faker.js thing from yesterday comes to mind as a very good reason to not want to auto-update to the latest version of a lib.
- progval 5y agoThat's why I install from curated package repositories (eg. Debian) as much as possible, and encourage users of my own software to do so as well.
- jimktrains2 5y ago> And Rust ints can overflow. There are provisions to do math that won't overflow or that can saturate. For example https://doc.rust-lang.org/std/primitive.u32.html#method.checked_sub https://doc.rust-lang.org/std/primitive.u32.html#method.chec...
- progval 5y agoSure, but it's less convenient to use.