Whyfore did Larry Wall leave `when' out of Perl?
The one-branch conditionals when and unless might seem to be redundant, but they communicate something that neither if nor cond can communicate: A promise that there will not be any other alternatives, or that if its condition is not met, nothing needs to be done. [...] Whereas most programming languages have a single conditional statement and, if you are lucky, maybe a conditional expression, Common Lisp once again proves itself as the language that communicates with programmers and captures their intent through the choice of which of several forms to use.
On conditionals, by Erik Naggum