16 pointsby olexsmir5 hours ago4 comments
  • nicoburnsan hour ago
    Currently we generally have a trade-off between:

    - The standard library, which is both trusted/blessed and perma-stable

    - A package ecosystem which is neither

    I would love to see more exploration of the space in between:

    - An extended stdlib which ships versioned libraries which use semver rather than being perma-stable.

    - Better support for managing verification and assurance of package ecosystems.

  • aarroyocan hour ago
    Yes! I've never been against languages with batteries included. In fact nowadays I prefer them. It's one of my biggest issues with Rust, but the problem also exists in Haskell. Funnily enough, in Node.js, which gave birth to npm, you can now do many stuff without external dependencies (last one I've seen are the sqlite functions).

    But yes, in languages with batteries included sometimes they feel like an afterthought. It's not just Python. Java also used to have a big standard library, with many useful things including GUI programming which has been neglected a little bit.

    • spockz29 minutes ago
      The trick is, when shipping a new language having a batteries-included std lib is hard to do: what should you select, what is considered good (enough), how much time do you spent on it. This detracts from what most languages try to be. An exploration in novel language/compiler paradigms.

      With node, what happened is that it was left to the ecosystem to grow good packages/batteries. Same with golang (see the uuid lib example from 1.27 the other day).

      To bridge the gap you could have the language/platform declare some “blessed packages” or even “blessed packages and their versions for each release of the language”.

    • akazantsev28 minutes ago
      > Java also used to have a big standard library, with many useful things including GUI programming which has been neglected a little bit.

      Swing was replaced with JavaFX, then JavaFX was removed from JDKs. Long live Swing! But yes, it's extremely nice to have a GUI library out of the box.

  • karlsefni2 hours ago
    I was fully expecting a comparison of recent battery chemistries, and forgot the "batteries included" saying being used for programming.

    As someone who doesn't use the mentioned languages often, it's surprising to hear that Python's stdlib is inconsistent given how old it is / how much work has probably gone into it.

    • boxedan hour ago
      It's about backwards compatibility and that the naming conventions weren't stabilized until after a bunch of libs entered the language.
  • Levitatingan hour ago
    > it seems that the reason for Rust not having an API to get a stream of random bytes from the OS

    This is already in nightly[1]. I don't see what "getting money in peoples pockets" has to do with its stabilization.

    [1]: https://doc.rust-lang.org/std/random/trait.Rng.html#tymethod...