My idea would be to factor the `@catch` clause into something like `MTLCatchExceptionAsError(NSException *ex, NSError **error)` – would you think it's a good idea if that method changed behavior depending on `DEBUG`? I feel like I'd rather leave that at the call site…