<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto"><div><br><br><div>Regards</div>(From<span class="Apple-style-span" style="-webkit-tap-highlight-color: rgba(26, 26, 26, 0.296875); -webkit-composition-fill-color: rgba(175, 192, 227, 0.230469); -webkit-composition-frame-color: rgba(77, 128, 180, 0.230469); "> mobile)</span></div><div><br>On May 20, 2016, at 5:39 PM, Matthew Johnson via swift-evolution <<a href="mailto:swift-evolution@swift.org">swift-evolution@swift.org</a>> wrote:<br><br></div><blockquote type="cite"><div><meta http-equiv="Content-Type" content="text/html charset=utf-8"><br class=""><div><blockquote type="cite" class=""><div class="">On May 20, 2016, at 10:19 AM, Adrian Zubarev via swift-evolution <<a href="mailto:swift-evolution@swift.org" class="">swift-evolution@swift.org</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div id="bloop_customfont" style="font-family: Helvetica, Arial; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; margin: 0px;" class=""><div style="font-family: Helvetica, Arial; font-size: 13px;" class=""><blockquote type="cite" class="clean_bq" style="font-family: Helvetica, Arial; font-size: 13px; font-style: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">I don't understand what you mean. I definitely think your '<span style="background-color: rgba(255, 255, 255, 0);" class="">typealias ABC = Any<AB, C>' should be valid.</span></blockquote></div><p style="font-family: Helvetica, Arial; font-size: 13px;" class="">I said<span class="Apple-converted-space"> </span><span style="background-color: rgba(255, 255, 255, 0);" class="">typealias ABC = Any<AB, C> is valid.</span></p><p style="font-family: Helvetica, Arial; font-size: 13px;" class=""><span style="background-color: rgba(255, 255, 255, 0);" class="">Where</span></p><p style="font-family: Helvetica, Arial; font-size: 13px;" class=""><span style="background-color: rgba(255, 255, 255, 0);" class="">typealias AliasA = Any<A></span></p><p style="font-family: Helvetica, Arial; font-size: 13px;" class=""><span style="background-color: rgba(255, 255, 255, 0);" class="">is not and furthermore</span></p><p style="font-family: Helvetica, Arial; font-size: 13px;" class=""><span style="background-color: rgba(255, 255, 255, 0);" class="">typealias AliasAA = Any<AliasA></span></p><p class=""><span style="background-color: rgba(255, 255, 255, 0);" class="">should also not be valid because Any<Any<A>> shouldn’t be valid.</span></p><div style="font-family: Helvetica, Arial; font-size: 13px;" class=""><blockquote type="cite" class="clean_bq" style="font-family: Helvetica, Arial; font-size: 13px; font-style: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;"><div class="">IMO the rules around banning nested any are unnecessary complexity. The constructs have a well defined meaning. The argument to ban them is purely around limiting allowable syntactic style. People are very unlikely to actually use this nesting except through the abstraction of a typealias which is a very valid use case. The complexity of the rules does not appear to provide any tangible benefit.</div></blockquote></div></div><div style="font-family: Helvetica, Arial; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=""><br class=""></div><span style="font-family: Helvetica, Arial; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: inline !important;" class="">Which rule(s) do you refer to exactly?</span></div></blockquote><div><br class=""></div><div>Any rules that ban syntactic constructs which have a well defined meaning on purely stylistic grounds. Those introduce unnecessary complexity for little, if any benefit. As Tony points out, it is possible that such bans would have unintended consequences and ban useful constructs. It is not worth the effort to try to ensure they don’t have unintended consequences. </div><div><br class=""></div></div></div></blockquote><div><br></div><div>If i am not mistaken, linters exist so that these rules can be created an enforced without having to introduce special cases in compilers.</div><br><blockquote type="cite"><div><div><div>We rely on people to do sensible things stylistically all the time (Swift does not enforce code layout like some languages do). I don’t see why `Any` should be different.</div><br class=""><blockquote type="cite" class=""><div class=""><div style="font-family: Helvetica, Arial; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=""><br class=""><div id="bloop_sign_1463757384681544960" class="bloop_sign"><div style="font-family: helvetica, arial; font-size: 13px;" class="">-- <br class="">Adrian Zubarev<br class="">Sent with Airmail</div></div><br class=""><p class="airmail_on">Am 20. Mai 2016 bei 17:12:40, Matthew Johnson (<a href="mailto:matthew@anandabits.com" class="">matthew@anandabits.com</a>) schrieb:</p></div><span style="font-family: Helvetica, Arial; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: inline !important;" class="">_______________________________________________</span><br style="font-family: Helvetica, Arial; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=""><span style="font-family: Helvetica, Arial; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: inline !important;" class="">swift-evolution mailing list</span><br style="font-family: Helvetica, Arial; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=""><a href="mailto:swift-evolution@swift.org" style="font-family: Helvetica, Arial; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">swift-evolution@swift.org</a><br style="font-family: Helvetica, Arial; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=""><a href="https://lists.swift.org/mailman/listinfo/swift-evolution" style="font-family: Helvetica, Arial; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">https://lists.swift.org/mailman/listinfo/swift-evolution</a></div></blockquote></div><br class=""></div></blockquote><blockquote type="cite"><div><span>_______________________________________________</span><br><span>swift-evolution mailing list</span><br><span><a href="mailto:swift-evolution@swift.org">swift-evolution@swift.org</a></span><br><span><a href="https://lists.swift.org/mailman/listinfo/swift-evolution">https://lists.swift.org/mailman/listinfo/swift-evolution</a></span><br></div></blockquote></body></html>