• taladar@sh.itjust.works
    link
    fedilink
    arrow-up
    1
    ·
    3 months ago

    Verifying that your different pieces of code actually work together. With a static type system and similar compiler features you can lighten the mental load a lot compared to languages like Python where you need to keep it all in your head.

      • taladar@sh.itjust.works
        link
        fedilink
        arrow-up
        1
        ·
        3 months ago

        The problem with optional typing is that it has all the downsides of both but gives you very little of the advantages of a strong static type system, e.g. being able to rely on types catching certain kinds of errors when refactoring because you don’t know for sure that all APIs have types. It is really nothing more than an admission by dynamically typed languages that static types are so useful you can’t really do without them while at the same time not admitting that it might be best to move to a language and library ecosystem that was designed with static types from the start.