Proposal link: https://github.com/apple/swift-evolution/blob/master/propo sals/0144-allow-single-dollar-sign-as-valid-identifier.md
> * What is your evaluation of the proposal? > -1. The proposal does not actually provide motivation for keeping $ beyond "the Dollar library already uses it". A more Swifty way for a library to introduce these operations would be with extensions. Here are some suggestions, based off the first several operations described in the library's readme: $.at → convenience subscript(Index...) for Collection $.chunk → convenience function for Sequence $.compact → flatMap{$0} $.contains → already exists as Sequence.contains $.cycle → convenience function for Collection $.difference → convenience function on Collection, or just use Set operations, or filter $.each → exists as Sequence.forEach $.every → extension on Sequence $.factorial → convenience method or postfix operator for Integer $.fetch → convenience function on Collection and so on. It looks like the author's Cent <https://github.com/ankurp/Cent> library is already taking this approach. > * Is the problem being addressed significant enough to warrant a > change to Swift? > Yes, but the change has already been made: removing $ as a valid identifier ;-) > * Does this proposal fit well with the feel and direction of Swift? > Not really. If anything, IMO, the dollar sign feels more like an operator character. (However, it's probably here to stay in identifiers because of closure parameters and LLDB variables.) > * If you have used other languages or libraries with a similar > feature, how do you feel that this proposal compares to those? > The Dollar library resembles the style of JavaScript libraries such as jQuery or Underscore, but that isn't a positive thing in my mind — as mentioned above, the Swift way of doing things is different. > * How much effort did you put into your review? A glance, a quick > reading, or an in-depth study? > Thorough reading of the proposal; brief glance at the library's readme on GitHub. Lots of time thinking about operator & identifier characters for a forthcoming proposal.
_______________________________________________ swift-evolution mailing list swift-evolution@swift.org https://lists.swift.org/mailman/listinfo/swift-evolution