I've known that unless ... else ... works for ages, but I don't use it for just the reason you didn't think it would work - it just doesn't sound right. When someone else is reading and maintaining my code I want them to be able to read it quickly and easily, not have to keep going "huh?".