With closures being first class citizens in Swift and the ability of
closures to be able to capture scope, it seems a little archaic to me that
the #selector() feature exists in Swift.

For example, why does
func addTarget(_ target: Any?, action: Selector
<https://developer.apple.com/documentation/objectivec/selector>, for
controlEvents: UIControlEvents

have a Selector type for action. Why can’t action be defined to be a
closure  for example:
addTarget(_ target: Any?, action: (sender: UIControl?, forEvent
event:UIEvent?) -> Void, for controlEvents: UIControlEvents

What do you guys think?


swift-users mailing list

Reply via email to