I often want to use an operator called “but”, the complete equivalent to “and”. It would let me say:
if guest.wants_to_see(report) but report.is_premium_content raise PremiumContentException end
As opposed to:
if guest.wants_to_see(report) and report.is_premium_content raise PremiumContentException end
The first example is easier to comprehend because it’s closer to the business rule and the way we think [...]
