.none or a more appropriate keyword like “none” (imo)

Brandon

> On Jun 8, 2016, at 4:47 PM, Xiaodi Wu via swift-evolution 
> <swift-evolution@swift.org> wrote:
> 
> It's been pointed out before that Optional being an enum type is treated like 
> an implementation detail. Currently, it is possible to teach the concept of 
> Optional without introducing enum types or generics. How would you do so 
> after elimination of nil?
> 
> 
> On Wed, Jun 8, 2016 at 3:41 PM, Антон Жилин <swift-evolution@swift.org 
> <mailto:swift-evolution@swift.org>> wrote:
> (No joking)
> Points:
> 
> 1. When nil was added to the language, we could not infer enumeration type:
> if x != Optional.none { ... }
> 
> Now it looks like this:
> if x != .none { ... }
> 
> If at this point we had a proposal to add nil as a replacement for .none, 
> would we accept it?
> 
> 2. nil is very generic, it only approximately allows to express the 
> intentions.
> In case of Optional, .none is clearer. In case of JSON processing, .null is 
> clearer. In case of a semantically nullable struct, NilLiteralConvertible 
> usually goes to default constructor.
> 
> 3. Too many "empty" things: .none, nil; NSNull, Void, NoReturn types.
> 
> 4. There should be a single consistent terminology: no value in Swift equals 
> none.
> 
> - Anton
> 
> _______________________________________________
> 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

Reply via email to