Booleans Are a Trap

from blog katafrakt’s garden, | ↗ original
As developers, we love our booleans. They map perfectly into how computers work at a low level and play nicely with if statements, our primary control-flow tool. They are simple to reason about. What's not to like? We actually like them so much that we use them for domain modeling. And that's where things get problematic. I would like to show you...