• Jesus_666@lemmy.world
    link
    fedilink
    arrow-up
    20
    ·
    5 days ago

    Yeah, that’s basically the kind of logic you use when designing a low-level programming language: If we didn’t define what happens here then anything that happens is correct behavior and it’s up to the user to avoid it.

    Of course applying that logic to a GUI application intended for a comparatively nontechnical audience is utter madness.

    • mobotsar@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      4
      ·
      edit-2
      4 days ago

      That’s the kind of logic people historically used when designing low level programming languages. It’s not the kind of logic you should use or that people nowadays usually do use. Undefined behavior is widely seen as a Bad Thing in the programming language design community.

      • Jesus_666@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        4 days ago

        Oh, don’t get me wrong, I fully agree. Undefined behavior is terrible UX and a huge security risk.

        Undefined behavior was kind of okay when RAM and storage were measured in kilobytes and adding checks for this stuff was noticeably expensive. That time has passed, though, and modern developers have no business thinking like that, even ones working on low-level languages.

        I should’ve phrased my comment differently.