<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div><br class=""><blockquote type="cite" class=""><div class=""><span style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: inline !important;" class="">While the \ syntax will only apply to key paths to begin with, we want to look into unifying all unapplied member references under that syntax.</span></div></blockquote></div><br class=""><div class="">Glad to hear that — I hope the core team will keep the courage to break syntax from time to time if the change improves the consistency of Swift.</div><div class="">But like anyone else, I prefer breaking changes to happen rarely, and I think other parts of the language should be taken into account as well.</div><div class=""><br class=""></div><div class="">KVC is nice, but I would really like to see some sort of namespace for querying and working with "meta-properties":</div><div class="">— function references</div><div class="">— properties</div><div class="">— MemoryLayout&lt;T&gt;</div><div class="">— functions (I'm thinking of stuff like introspection of parameters, and something like "apply" as a replacement for tuple splat)</div><div class="">— mirrors</div><div class="">— (most likely, I forgot some other possibilities)</div><div class=""><br class=""></div><div class="">There's no concrete vision for such a concept, but I'll just use ":" for illustration...</div><div class="">let appender: (Array&lt;Int&gt;, Int) -&gt; Void = Array&lt;Int&gt;:methods:append</div><div class="">let someStaticFunction = MyType:classMethods:setGlobalInstance</div><div class="">let sizeProperty = Array:properties:size</div><div class="">let bytesNeeded = Double:memoryLayout.size</div><div class="">if theFunction:signature.parameters = [Int, Int] &amp;&amp; theFunction:signature.returnType == T {</div><div class=""><span class="Apple-tab-span" style="white-space:pre">        </span>return&nbsp;theFunction:callWith(myPairOfInt)</div><div class="">}</div><div class="">let parent = Self:superclass</div><div class="">for type in UIViewController:allKnownSubclasses {…</div><div class=""><br class=""></div></body></html>