• sus@programming.dev
        link
        fedilink
        arrow-up
        9
        ·
        2 months ago

        I think the problems there are exacerbated a lot by over-eager type coercion and other crappy design decisions inherited from almost 30 years ago

        • barsoap
          link
          fedilink
          arrow-up
          5
          ·
          2 months ago

          Yep lua and lisp/scheme are also unityped and not even close to as broken. All are remarkably similar languages, theory-wise.

          …also something something Guido not getting tail call elimination and people sending him copies of the wizard book. It’s been a while.

          (And, yes, lua does proper tail calls).

    • unalivejoy
      link
      fedilink
      English
      arrow-up
      8
      arrow-down
      1
      ·
      2 months ago

      Operator overloads, descriptor protocol, decorators

      • xmunk@sh.itjust.works
        link
        fedilink
        arrow-up
        7
        ·
        2 months ago

        Operator overloads are excellent for readable code when used well - I object to their inclusion on this list.

        • unalivejoy
          link
          fedilink
          English
          arrow-up
          5
          ·
          2 months ago

          As long as you don’t have to implement it yourself.

    • TheHarpyEagle@pawb.social
      link
      fedilink
      arrow-up
      3
      ·
      2 months ago

      Honestly, I’ve been using type hints very heavily since they became a thing. I just use IDE completion too much to do without them.