<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Sun, Jul 10, 2016 at 10:42 PM, Erica Sadun via swift-evolution <span dir="ltr">&lt;<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class="">&gt; On Jul 10, 2016, at 5:18 PM, James Froggatt via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org">swift-evolution@swift.org</a>&gt; wrote:<br>
&gt;<br>
&gt; Currently, the signature is:<br>
&gt; subscript(_ example: Int) -&gt; Element {<br>
&gt;    get { … }<br>
&gt;    set { … }<br>
&gt; }<br>
&gt;<br>
&gt; The alternative, using a colon, would be:<br>
&gt; subscript(_ example: Int) : Element {<br>
&gt;    get { … }<br>
&gt;    set { … }<br>
&gt; }<br>
&gt;<br>
&gt; Sorry if that wasn&#39;t clear.<br>
&gt;<br>
&gt; This would be to better reflect the property-like nature of access.<br>
<br>
</span>It all depends on whether a subscript is more function-y or property-y, and don&#39;t forget subscripts can take parameters and labels.<br>
<br>
let y = myArrayOfStrings[safeIndex: 2, fallback: &quot;foo&quot;]<br>
<span class="HOEnZb"><font color="#888888"><br>
-- E</font></span></blockquote><div><br></div><div>But isn&#39;t it the getter and setter which are really function-y? That&#39;s why you can write &quot;set(myVariableName) { ... }&quot; </div></div></div></div>