Yeah, guard is awesome, especially for making arguments from optionals to regular(?) variables.
But you kinda had that "guard" with NSAssert() in DEBUG. In fact all methods should have NSParameterAssert() for mandatory arguments before recent Obj-C additions. You could written your own assertion to work in production and do a beep and return.