&gt; Constants are defined via let, and variable are allowed to vary through a var. Though constants are lame, as only the binding itself is constant and you can change everything inside them as usual.<p>That is at best misleading, as it is not true for collections. From the Swift docs:<p>&gt; If you create an array, a set, or a dictionary, and assign it to a <i>variable</i>, the collection that is created will be mutable. This means that you can change (or mutate) the collection after it is created by adding, removing, or changing items in the collection. If you assign an array, a set, or a dictionary to a <i>constant</i>, that collection is immutable, and its size and contents cannot be changed.<p>Swift is the only language that I&#x27;ve seen that actually does make a distinction depending on the keyword used.