<div dir="ltr"><p style="margin:0px;font-size:12px;line-height:normal;font-family:helvetica;color:rgb(69,69,69)">        * What is your evaluation of the proposal?</p>
<p style="margin:0px;font-size:12px;line-height:normal;font-family:helvetica;color:rgb(69,69,69);min-height:14px"><br></p>
<p style="margin:0px;font-size:12px;line-height:normal;font-family:helvetica;color:rgb(69,69,69)">Quoting Motivation : &quot;The major observation here is that not all classes make sense to subclass, and it takes real thought and design work to make a class subclassable <i>well</i>. As such, being able to subclass a public class should be an additional &quot;promise&quot; beyond the class just being marked public.&quot;</p>
<p style="margin:0px;font-size:12px;line-height:normal;font-family:helvetica;color:rgb(69,69,69);min-height:14px"><br></p>
<p style="margin:0px;font-size:12px;line-height:normal;font-family:helvetica;color:rgb(69,69,69)">There seems to be two questions.</p>
<ol>
<li style="margin:0px;font-size:12px;line-height:normal;font-family:helvetica;color:rgb(69,69,69)"> should a class being designed  be sealed or not?  ’final’ already works, changing defaults seems unnecessary.</li><li><span style="color:rgb(69,69,69);font-family:helvetica;font-size:12px">how does the class designer go about selecting what to expose for possible overriding in sub-classes. </span><span style="color:rgb(69,69,69);font-family:helvetica;font-size:12px"> I agree with the proposal. Selectively publishing members is a better way to think about the class design, and will result in clearer intent and better design.</span></li></ol>
<p style="margin:0px;font-size:12px;line-height:normal;font-family:helvetica;color:rgb(69,69,69)">Suggestions:</p>
<ol>
<li style="margin:0px;font-size:12px;line-height:normal;font-family:helvetica;color:rgb(69,69,69)">leave `final` as is</li>
<li style="margin:0px;font-size:12px;line-height:normal;font-family:helvetica;color:rgb(69,69,69)">require explicit annotation of members for overriding. ( `default`, `published`, `open` )</li>
<li style="margin:0px;font-size:12px;line-height:normal;font-family:helvetica;color:rgb(69,69,69)">whether a class or member is public, internal, or private should have no bearing on number 1 or  2.</li>
<li style="margin:0px;font-size:12px;line-height:normal;font-family:helvetica;color:rgb(69,69,69)">if there are no `published` members, class is implicitly final.</li></ol>
<p style="margin:0px;font-size:12px;line-height:normal;font-family:helvetica;color:rgb(69,69,69)">        * Does this proposal fit well with the feel and direction of Swift?</p>
<p style="margin:0px;font-size:12px;line-height:normal;font-family:helvetica;color:rgb(69,69,69);min-height:14px"><br></p>
<p style="margin:0px;font-size:12px;line-height:normal;font-family:helvetica;color:rgb(69,69,69)">As proposed the ideas are very much in line with Swift,  hopefully as suggested even more so.</p>
<p style="margin:0px;font-size:12px;line-height:normal;font-family:helvetica;color:rgb(69,69,69);min-height:14px"><br></p>
<p style="margin:0px;font-size:12px;line-height:normal;font-family:helvetica;color:rgb(69,69,69)">        * How much effort did you put into your review? A glance, a quick reading, or an in-depth study?</p>
<p style="margin:0px;font-size:12px;line-height:normal;font-family:helvetica;color:rgb(69,69,69)">A moderate amount of thought and experimentation. I did not have time to read historical discussions.</p>
<p style="margin:0px;font-size:12px;line-height:normal;font-family:helvetica;color:rgb(69,69,69);min-height:14px"><br></p>
<span style="color:rgb(69,69,69);font-family:helvetica;font-size:12px">Amber</span><br><br><div class="gmail_quote"><div dir="ltr">On Sat, Jul 16, 2016 at 1:52 AM Chris Lattner via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org">swift-evolution@swift.org</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello Swift community,<br>
<br>
The second review of &quot;SE-0117: Default classes to be non-subclassable publicly&quot; begins now and runs through July 22. The proposal is available here:<br>
<br>
        <a href="https://github.com/apple/swift-evolution/blob/master/proposals/0117-non-public-subclassable-by-default.md" rel="noreferrer" target="_blank">https://github.com/apple/swift-evolution/blob/master/proposals/0117-non-public-subclassable-by-default.md</a><br>
<br>
Reviews are an important part of the Swift evolution process. All reviews should be sent to the swift-evolution mailing list at<br>
<br>
        <a href="https://lists.swift.org/mailman/listinfo/swift-evolution" rel="noreferrer" target="_blank">https://lists.swift.org/mailman/listinfo/swift-evolution</a><br>
<br>
or, if you would like to keep your feedback private, directly to the review manager.<br>
<br>
What goes into a review?<br>
<br>
The goal of the review process is to improve the proposal under review through constructive criticism and contribute to the direction of Swift. When writing your review, here are some questions you might want to answer in your review:<br>
<br>
        * What is your evaluation of the proposal?<br>
        * Is the problem being addressed significant enough to warrant a change to Swift?<br>
        * Does this proposal fit well with the feel and direction of Swift?<br>
        * If you have used other languages or libraries with a similar feature, how do you feel that this proposal compares to those?<br>
        * How much effort did you put into your review? A glance, a quick reading, or an in-depth study?<br>
<br>
More information about the Swift evolution process is available at<br>
<br>
        <a href="https://github.com/apple/swift-evolution/blob/master/process.md" rel="noreferrer" target="_blank">https://github.com/apple/swift-evolution/blob/master/process.md</a><br>
<br>
Thank you,<br>
<br>
-Chris Lattner<br>
Review Manager<br>
<br>
<br>
_______________________________________________<br>
swift-evolution mailing list<br>
<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a><br>
<a href="https://lists.swift.org/mailman/listinfo/swift-evolution" rel="noreferrer" target="_blank">https://lists.swift.org/mailman/listinfo/swift-evolution</a><br>
</blockquote></div></div>