• shalafi@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    8 hours ago

    Can someone explain the term? I’ve been in IT for 25 years, but haven’t written anything but Powershell.

    • Ashen44@lemmy.ca
      link
      fedilink
      arrow-up
      5
      arrow-down
      1
      ·
      8 hours ago

      When programming, data is stored in variables. In a weakly typed language you define a variable and you can put anything in it. Numbers, text, whatever. In a strongly typed language when you define a variable you also have to define what it can take. If you define a variable that can hold numbers, it can only hold numbers and never text or anything else.

      Weak typing makes code easier to write and more flexible while strong typing makes code more secure and harder to accidentally break. It’s mostly a preference thing in the end.

      • xylogx@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        2 hours ago

        Just to add to this all data is ultimately stored as ones and zeros. In order to translate it to a piece of text or some type of number the computer needs to determine what type of data it represents. If the computer guesses the wrong type you just get garbage. Languages like C allow you to store data without rigid type definitions, it is up to the programmer to make sure the code gets the type right. In a strongly typed language you are not allowed to use variables of one type as some other type without some explicit conversion. It is safer but a little annoying.

        • mmddmm@lemm.ee
          link
          fedilink
          arrow-up
          3
          ·
          7 hours ago

          It normally means either some point on the strict/lenient/unityped spectrum the author thinks is strict typed, or static typed.

          And yeah, it’s a useless name, we could as well use it for languages that make the developer break keyboards.