Yes. All of these variants are covered in the book The Swift Programming Language in some detail.
Alex ––––– Alexander Kempgen [email protected] > Am 05.01.2016 um 14:42 schrieb James Campbell via swift-evolution > <[email protected]>: > > So the [Int]() is shorthand for Array<Int>() > > On Tue, Jan 5, 2016 at 1:01 PM, Jeremy Pereira > <[email protected] <mailto:[email protected]>> > wrote: > > > On 5 Jan 2016, at 12:51, James Campbell <[email protected] > > <mailto:[email protected]>> wrote: > > > > The problem for me is that is so counter intuitive I didn't even know you > > could do that. > > The first one is a bit counter intuitive and I agree that > > var distanceCache: [Int: Int] = [] > > might be an improvement, albeit not one I think many people would agree is > worth doing. However, the second one is a natural extrapolation from the > equivalent array syntax i.e. > > var array = [Int]() > var dictionary = [String: Int]() > > > > > On Tue, Jan 5, 2016 at 12:50 PM, Jeremy Pereira > > <[email protected] <mailto:[email protected]>> > > wrote: > > I don’t understand what the problem is > > > > > On 5 Jan 2016, at 12:39, James Campbell via swift-evolution > > > <[email protected] <mailto:[email protected]>> wrote: > > > > > > See this code: > > > var distanceCache: [Int: Int] = Dictionary<Int, Int>() > > > > > > It is very long and tedious to write especially if what I am storing > > > changes. > > > > > > I propose we be allowed to do the following: > > > var distanceCache: [Int: Int] = [] > > > > You can do > > > > var distanceCache: [Int: Int] = [:] > > > > Also > > > > var distanceCache2 = [Int: Int]() > > > > > > > Perhaps this dictionary syntax is just confusing and it was a bad idea to > > > make it the same as an array. Most languages use "{" so why did swift > > > choose to share "[" with arrays and dictionaries. > > > > It’s not the same, you need the colons inside. I imagine that braces were > > discarded on the grounds that it would confuse the compiler with respect to > > closures, for example > > > > var myClosure = {} // is a variable of type () -> () > > > > > > > > > > -- > > > Wizard > > > [email protected] <mailto:[email protected]> > > > +44 7523 279 698 <tel:%2B44%207523%20279%20698> > > > _______________________________________________ > > > swift-evolution mailing list > > > [email protected] <mailto:[email protected]> > > > https://lists.swift.org/mailman/listinfo/swift-evolution > > > <https://lists.swift.org/mailman/listinfo/swift-evolution> > > > > > > > > > > -- > > Wizard > > [email protected] <mailto:[email protected]> > > +44 7523 279 698 <tel:%2B44%207523%20279%20698> > > > > > -- > Wizard > [email protected] <mailto:[email protected]> > +44 7523 279 698 > _______________________________________________ > swift-evolution mailing list > [email protected] <mailto:[email protected]> > https://lists.swift.org/mailman/listinfo/swift-evolution > <https://lists.swift.org/mailman/listinfo/swift-evolution>
_______________________________________________ swift-evolution mailing list [email protected] https://lists.swift.org/mailman/listinfo/swift-evolution
