To me it's perfectly intuitive.
However, the other example he gave blew me away:
return if cond { ... } else { ... }
To me it's perfectly intuitive.
However, the other example he gave blew me away:
The compiler evaluating both results and chosing the right one using a cmov, rather than using a branch to evaluate just one result was not what I would have expected. My how times have changed.