This essay says that inheritance is harmful and if possible you should “ban inheritance completely”. You see these arguments a lot, as well as things like “prefer composition to inheritance”. A lot of these arguments argue that in practice inheritance has problems. But they don’t preclude inheritance working in another context, maybe with a better language syntax. And it doesn’t explain why inheritance became so popular in the first place. I want to explore what’s fundamentally challenging about inheritance and why we all use it anyway.

    • xigoi@lemmy.sdf.org
      link
      fedilink
      arrow-up
      4
      ·
      7 months ago

      In most programming languages, integers are not considered a subset of floats, so when you have the type Int | Float, you can distinguish 3 from 3.0.