<div dir="ltr"><div>@Félix,</div><div><br></div>For the first point, the issue you talked about isn&#39;t new. We can enter into that mess easily right now just by changing `let` to `var`.<div><br></div><div>For the second point, well.. I agree with you and @Michel, thank you guys. It do make sense, I should&#39;ve noticed it earlier. This is not an appropriate solution to make the current &quot;didSet&quot; keyword available for `let` property. </div><div><br></div><div>But I&#39;m still thinking it should not be a problem at all if we add something new, such as &quot;didInit&quot;, which only get called for the very first time when property is assigned a value.</div><div><br></div><div>What do you think?</div><div><br></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Dec 23, 2015 at 7:39 PM, Michel Fortin <span dir="ltr">&lt;<a href="mailto:michel.fortin@michelf.ca" target="_blank">michel.fortin@michelf.ca</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">Le 23 déc. 2015 à 11:07, Félix Cloutier via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org">swift-evolution@swift.org</a>&gt; a écrit :<br>
<br>
&gt; willSet and didSet are currently not even called from the init method.<br>
<br>
</span>And they can&#39;t, because in those two blocks you have access to the old value as well as the new value. How would that work when you&#39;re setting the initial value?<br>
<br>
        var value: Int {<br>
                willSet { print(&quot;willSet \(value) -&gt; \(newValue)&quot;) }<br>
                didSet { print(&quot;didSet \(oldValue) -&gt; \(value)&quot;) }<br>
        }<br>
<span class="HOEnZb"><font color="#888888"><br>
<br>
--<br>
Michel Fortin<br>
<a href="https://michelf.ca" rel="noreferrer" target="_blank">https://michelf.ca</a><br>
<br>
</font></span></blockquote></div><br></div>