> I think the feature should stay but we need community guidelines on when and > when not to use them.
I agree with James here. > On Mar 24, 2016, at 1:15 PM, James Campbell via swift-evolution > <swift-evolution@swift.org> wrote: > > I think the feature should stay but we need community guidelines on when and > when not to use them. > > ___________________________________ > > James⎥Head Of CEO > > ja...@supmenow.com <mailto:ja...@supmenow.com>⎥supmenow.com > <http://supmenow.com/> > Sup > > Runway East > > > 10 Finsbury Square > > London > > > EC2A 1AF > > > On Thu, Mar 24, 2016 at 4:13 PM, William Dillon via swift-evolution > <swift-evolution@swift.org <mailto:swift-evolution@swift.org>> wrote: >> On Mar 24, 2016, at 7:18 AM, Kurt Werle via swift-evolution >> <swift-evolution@swift.org <mailto:swift-evolution@swift.org>> wrote: >> >> Coming from ruby, I'm quite fond of trailing closures. I couldn't really >> give you a concrete reason why - putting them in the ()'s really isn't that >> big a deal. But I'll say that I move them outside every single time... >> >> I will say that your examples are the most trivial possible and that the >> more complex the closure (describing context variables and return types, >> throws, etc) the uglier it seem to me to put it inside parens. >> > > Agree. > > Another thing I like about trailing closures is that it allows me to make > custom constructs that feel more like a part of the language. For example, I > really love this extension for NSLock that I have: > > extension NSLock { > func protect(action: (Void) -> Void) { > self.lock() > action() > self.unlock() > } > } > > Now, whenever I need to use my lock, I can just do: > > peersLock.protect { > outputString += "\(self.peers.count) peers:\n" > for (_, peer) in self.peers { > outputString += "\(peer)\n" > } > } > > To me, it looks cleaner to me to not have this paren dangling around at the > end. On this one I’d definitely say that if you don’t like it, don’t use it. > I don’t *think* that you’re forced to use it anywhere. It’s a hard sell to > take it away from everyone. > > - Will > > _______________________________________________ > swift-evolution mailing list > swift-evolution@swift.org <mailto:swift-evolution@swift.org> > https://lists.swift.org/mailman/listinfo/swift-evolution > <https://lists.swift.org/mailman/listinfo/swift-evolution> > > > _______________________________________________ > swift-evolution mailing list > swift-evolution@swift.org > https://lists.swift.org/mailman/listinfo/swift-evolution
_______________________________________________ swift-evolution mailing list swift-evolution@swift.org https://lists.swift.org/mailman/listinfo/swift-evolution