[swift-evolution] Proposal: Remove the space before the colon in compiler-generated [Key : Value] dictionary types

David Sweeris davesweeris at mac.com
Thu Jan 14 15:38:15 CST 2016


I use " : " (space on both sides) for everything except type annotations & generic constraints. Didn't realize I was doing it wrong.

> On Jan 14, 2016, at 11:35, Kevin Ballard via swift-evolution <swift-evolution at swift.org> wrote:
> 
> Dictionary type shorthand syntax is meant to look like a dictionary literal, and dictionary literals are almost universally written with no space before the colon. It makes sense to me for dictionary types to be written the same way, e.g. `[Key: Value]`. Not only does this look more like a dictionary literal, but I'd argue it also reduces confusion. Every other case that I can think of where you find space-colon-space syntax used is when declaring the bounds of a generic type parameter, or declaring the superclass/protocols of a type declaration (which is pretty similar to declaring the bounds). But in the syntax `[Key : Value]`, Value is not a bound on Key.


More information about the swift-evolution mailing list