<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=""><br class=""><div><blockquote type="cite" class=""><div class="">On Dec 11, 2015, at 1:40 AM, Brent Royal-Gordon via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org" class="">swift-evolution@swift.org</a>&gt; wrote:</div><br class="Apple-interchange-newline"><div class=""><div class=""><blockquote type="cite" class=""><blockquote type="cite" class="">Has any thought been given to making some of the design guidelines required by the compiler, instead of just guidelines? One guideline in particular I am thinking of is:<br class=""><br class="">"Follow case conventions: names of types, protocols and enum cases are UpperCamelCase. Everything else is lowerCamelCase.”<br class=""><br class="">As a teacher, I have to remind my students of this convention several times a day, mostly because students learn and use different languages (with different conventions) at the same time. After nil unwrapping, inconsistent casing is probably the #2 source of bugs my students write.<br class=""></blockquote><br class="">I think we’d have to carefully consider the exact policies that we support out of the box, but I’m not completely opposed to this sort of feature. &nbsp;It should also only apply to declarations, not uses of values (e.g. you should be able to “use” a misnamed decl imported from a C header).<br class=""><br class="">I’d also suggest that this produce a warning for violations, not an error.<br class=""></blockquote><br class="">Does Swift have a general policy that it should be possible to silence any warning the compiler emits?<br class=""></div></div></blockquote><div><br class=""></div><div>We should have such a policy, and Clang’s approach to handling warnings is a fairly good model:</div><div><br class=""></div><div><span class="Apple-tab-span" style="white-space:pre">        </span><a href="http://clang.llvm.org/docs/UsersManual.html" class="">http://clang.llvm.org/docs/UsersManual.html</a></div><div><br class=""></div><div>But, nobody has signed up to design/implement a warning opt-in/opt-out/escalation mechanism for the Swift compiler.</div><div><br class=""></div></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>- Doug</div><div><br class=""></div></body></html>