I think some raised points are relevant…

  • SavvyWolf@pawb.social
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    1 year ago

    I know it’s clickbait and all, but I can’t really let their comments about “decay” go without saying anything.

    I spent a weekend updating a Python project after updating the OS. Fuck Python’s release methodology.

    Yeah, Rust has a lot of releases, but they’re all backwards compatible. I’m pretty sure a modern Rust compiler can compile any historic Rust program. Meanwhile every “minor” Python release has backwards incompatible changes and there’s no guarantee of backwards compatibility at all. And that’s without even bringing up the big major bump from 2 to 3 which… Was not handled well.

    Honestly, if there’s any language that people should be angry at for “decaying”, it should be Python. Hell, even C and C++ have got this right.

      • Turun@feddit.de
        link
        fedilink
        arrow-up
        0
        ·
        edit-2
        1 year ago

        I think they introduce new keywords every now and then. Match and async I think?

        Edit: I was wrong, this is done in a backwards compatible manner

        • UlrikHD@programming.dev
          link
          fedilink
          arrow-up
          0
          ·
          1 year ago

          Those doesn’t break backwards compatibility though. Naturally you can’t use match with a python 3.7 interpreter, but what scripts written for python 3.7 wouldn’t work with a 3.11 interpreter?

          I haven’t encountered that issue before, so I’m curious what those problems OP have encountered looks like.

          • Turun@feddit.de
            link
            fedilink
            arrow-up
            0
            ·
            1 year ago

            Huh, ok. I thought something like match = 0 in an old script might break a more recent version.

            But you may very well be correct.

            • UlrikHD@programming.dev
              link
              fedilink
              arrow-up
              0
              ·
              edit-2
              1 year ago

              match isn’t a protected keyword like if is.

              match = 0
              match match:
                  case 0:
                      print(0)
                  case _:
                      print(1)
              

              Is legal and will give print out 0.

      • Schmeckinger@feddit.de
        link
        fedilink
        arrow-up
        0
        ·
        1 year ago

        Some wheel didn’t install for me, so I downgraded 1 minor version and then it installed. Some cuda wheel I think.