isn't there a way which checks whether the argument was passed in? This way you cannot pass in nil anywhere (except when this is an explicit default). That's no missing argument. We might want to check for nils as well, but I'm not totally sure. If there is no other way to check missing arguments this is fine though.