So Im going to do a little bit of runtime checking on the validity of optionals in swift and kotlin. If there is no as in zero runtime safety by lifting an optional in a method, Im going to call it a failure, not worth it, and lobby against it. If you cannot in the case of a statement like guard or lift with let in a method and guarantee runtime validity of that value even if its noop, you cant possibly without tons of code generation that would inevtiably fail, guarantee that that value can be closed over in a closure.