• floofloof@lemmy.ca
      link
      fedilink
      English
      arrow-up
      10
      arrow-down
      4
      ·
      11 months ago

      I almost upvoted but for that last sentence. Code block scopes are most intuitive, and JavaScript has become a better language since it gained them.

      • Blue_Morpho@lemmy.world
        link
        fedilink
        arrow-up
        3
        arrow-down
        2
        ·
        edit-2
        11 months ago

        Yeah I use it too. But when I have to read somebody’s code or my own from a while ago, I prefer everything labeled at the top. That way I can read the top, jump anywhere, and know what is going on without looking at any other lines.

        It’s a preference that can be argued like dynamic typing.

        • floofloof@lemmy.ca
          link
          fedilink
          English
          arrow-up
          3
          arrow-down
          1
          ·
          edit-2
          11 months ago

          I guess you could make a rule of declaring your variables at the top of their scope, be it a class, a function or a code block. That would give clarity without needlessly expanding any scopes.

    • AVincentInSpace@pawb.social
      link
      fedilink
      English
      arrow-up
      5
      ·
      11 months ago

      I’m not talking about dynamic vs static though. I’m talking about static typing with or without compiler type inference a la Rust or C++'s auto

      (note that Java making generic parameters optional does not count since that is, in fact, dynamic typing)

    • Lime66@lemmy.world
      link
      fedilink
      arrow-up
      2
      ·
      11 months ago

      I also prefer static typing but I like it when it is implemented like kotlin where type inference is still great, I think dart also works like that