Remix.run Logo
lll-o-lll 8 hours ago

Diamond inheritance is its own special kind of hell, but “protected virtual” members of java and c# are the “evil at scale” that’s still with us today. An easy pattern that leads to combinatorial explosion beyond the atoms in the universe. Trivially.

People need to look at a playing deck. 52 cards, and you get 8×10^67 possible orders of the deck. Don’t replicate this in code.

DeathArrow 44 minutes ago | parent [-]

Why do protected virtual methods lead to an explosion?