• Ashen44@lemmy.ca
    link
    fedilink
    arrow-up
    5
    arrow-down
    1
    ·
    9 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.