== Quote from Andrei Alexandrescu ([email protected])'s article
> Everybody talks about them but I've seen none.
> The fact that the coder doesn't need to think hard to use enforce()
> effectively is a plus, not a minus. An overdesigned enforce that adds
> extra burden to its user would have been a mistake.
> Andrei

IMHO the presence of a simple method of handling errors, even if it's far from
perfect, is a good thing.  If you have to think about a whole exception 
hierarchy
every time you hit a possible error condition in your code, you tend to put this
tedious task off until forever, leading to programs that fail for unknown 
reasons
because some error condition was never reported.  Well-designed exception
hierarchies are nice, but forcing their use all the time would be making the
perfect the enemy of the good.

Furthermore, I love enforce() because sometimes I want just some subset of
assertions checked in release mode, usually whichever ones can be checked at
negligible performance cost.  I tend to use it a lot as an
assert-even-in-release-mode function.

Reply via email to