<html><body><div id="edo-message"><div>Sorry to hijack the thread, but I was working to fix the fact that we can't have optional unowned pointers in swift and Jordan said he didn't think anybody ever asked for it before. It made me worry about the kind of practices swift is encouraging.</div><div><br></div><div>The overhead of using weak pointers isn't massive, but it involves locking and updating global tables (<a href="http://stackoverflow.com/questions/23689155/lots-of-overhead-for-weak-property" style="-webkit-tap-highlight-color: transparent; -webkit-text-size-adjust: auto;">http://stackoverflow.com/questions/23689155/lots-of-overhead-for-weak-property</a>)<span style="-webkit-tap-highlight-color: transparent; -webkit-text-size-adjust: auto;">. Unowned pointers don't have this overhead, and can also help you detect errors because they are fail-deadly.</span></div><div><span style="-webkit-tap-highlight-color: transparent; -webkit-text-size-adjust: auto;"><br></span></div><div><span style="-webkit-tap-highlight-color: transparent; -webkit-text-size-adjust: auto;">But yeah, I'd like to be able to reference non-owning instance methods.</span></div><div><br><div style="font-family: 'Helvetica Neue','Helvetica',Helvetica,Arial,sans-serif;font:'-apple-system-body';"><a href="https://itunes.apple.com/app/apple-store/id922793622?pt=814382&amp;mt=8&amp;ct=how_i_email">This</a> is how I Email now</div></div></div><div id="edo-original"><div><br><br><blockquote type="cite" style="margin:1ex 0 0 0;border-left:1px #ccc solid;padding-left:0.5ex;"><div>On Sep 14, 2016 at 7:45 am, &lt;<a href="mailto:rmann@latencyzero.com">Rick Mann</a>&gt; wrote:<br><br></div><div><pre><br>&gt; On Sep 13, 2016, at 22:34 , Xiaodi Wu via swift-evolution &lt;<a dir="ltr" href="mailto:swift-evolution@swift.org" x-apple-data-detectors="true" x-apple-data-detectors-type="link" x-apple-data-detectors-result="2">swift-evolution@swift.org</a>&gt; wrote:
<br>&gt;  
<br>&gt; It's similar to Linus' argument against using kernel debuggers (<a dir="ltr" href="https://lwn.net/2000/0914/a/lt-debugger.php3" x-apple-data-detectors="true" x-apple-data-detectors-type="link" x-apple-data-detectors-result="3">https://lwn.net/2000/0914/a/lt-debugger.php3</a>). Understanding your code at a level above the source, and being careful, make you a better developer. There are no features in swift which compensate for a lack of understanding about how your code works.
<br>
<br>Get off my lawn!
<br>
<br>
<br>--  
<br>Rick Mann
<br><a dir="ltr" href="mailto:rmann@latencyzero.com" x-apple-data-detectors="true" x-apple-data-detectors-type="link" x-apple-data-detectors-result="5">rmann@latencyzero.com</a>
<br>
<br>
<br></pre></div></blockquote></div></div></body></html>