> On Jan 8, 2018, at 5:08 PM, Karl Wagner <razie...@gmail.com> wrote:
> 
> 
> 
>> On 9. Jan 2018, at 01:29, Ben Cohen via swift-evolution 
>> <swift-evolution@swift.org> wrote:
>> 
>> There exists in the standard library a type `DictionaryLiteral` that 
>> deserves naming re-consideration before we declare ABI Stability, because 
>> it’s confusingly misnamed, being neither a Dictionary (it doesn’t provide 
>> key-based lookup of values) nor a Literal. 
>> 
>> Instead, it’s just an immutable collection of key-value pairs you can create 
>> _from_ a literal.
>> 
>> I’m canvassing for opinions on what it ought to be called.  Some suggestions 
>> so far:
>> 
>> - `AssociationCollection`: Following the term of art from some other 
>> languages. Slightly obscure-sounding to developers not already familiar. 
>> Also “association” and “associative” are confusingly similar, which brings 
>> back the is-this-a-dictionary problem.
>> - `KeyValueCollection`: Problematic because key-value comes up in a totally 
>> different context in Cocoa.
>> - `PairCollection`: “Pair” is kinda nondescript.
>> - Do nothing. It’s not so bad.
>> 
>> The old name can live on indefinitely via a typealias (which has no ABI 
>> consequences, so could be retired at a later date once everyone has had 
>> plenty of time to address the deprecation warnings). Removing it as not 
>> carrying its weight (and instead using `[(Key,Value)]`, which is basically 
>> what it’s a wrapper for) is probably off the table for source stability 
>> reasons.
>> 
>> Any further thoughts welcome.
>> 
>> 
>> 
>> _______________________________________________
>> swift-evolution mailing list
>> swift-evolution@swift.org
>> https://lists.swift.org/mailman/listinfo/swift-evolution
> 
> 
> Since it is a generic type, could it not be nested inside of the appropriate 
> Dictionary<Key, Value> type? That would make 2 or 3 more reasonable.
> 
> Also, what about Dictionary<Key, Value>.KeyValuePairs?
> 
> - Karl

It’s really not related to the Dictionary type. This isn’t part of Dictionary’s 
implementation leaking out, like DictionaryIndex or DictionaryIterator were. 
It’s a separate independently (marginally-) useful type.


_______________________________________________
swift-evolution mailing list
swift-evolution@swift.org
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to