I think this is the uncommon case, and deserves the parentheses:
x <- (if y then a else b) ;
I think I'm arguing that the precedence of if/then/else is too high, and
maybe should be lowered. Of course this isn't a reasonable thing to
ask, because it'll likely break existing code. Anyone with a way to
have my cake and eat it too?