<html><head><style>body{font-family:Helvetica,Arial;font-size:13px}</style></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:13px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;">I’m referring to this talk form the SE-0095 thread:</div><div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:13px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;"><br></div><div id="bloop_customfont" style="font-family:Helvetica,Arial;font-size:13px; color: rgba(0,0,0,1.0); margin: 0px; line-height: auto;"><blockquote type="cite" class="clean_bq">My feedback is that we should narrow what is acceptable for Any as much as possible, because <b>relaxing restrictions in the future won’t break existing code</b>.<br><br><b>To that end, I’d suggest Any<>,Any<Any, XX>, and Any<Any<XX>> all cause warnings.</b><br><br>-DW<br><br>> On May 19, 2016, at 12:43 AM, Austin Zheng <austinzheng@gmail.com> wrote:<br>> <br>> Does anyone want to speak up in favor of 'Any<>'? The more I think about it the more I think 'Any' should just be the single, canonical form.<br>> <br>> Austin<br>> <br>> <br>>> On May 18, 2016, at 11:33 PM, Colin Barrett <colin@springsandstruts.com> wrote:<br>>> <br>>> There's no need for this, that's what I was trying to get across. It's (likely) a special case in the grammar right now. If we eliminate Any<>, from the point of view of syntax, both Any and Any<Foo, Bar> are just a built in type and normal application of generic arguments (to a built in type).<br>>> <br>>> -Colin (via thumbs)<br>>> <br>>>> On May 19, 2016, at 1:58 AM, Austin Zheng <austinzheng@gmail.com> wrote:<br>>>> <br>>>> - 'Any<>' should be allowed. You can currently use 'protocol<>' in your code instead of 'Any'.<br></blockquote></div> <div><br></div><div>We could allow everything. Personally I wouldn’t care much, because of best practice style. But if we will decide to restrict something after Swift 3 drops this will break code again, which we want to avoid, am I right?</div><div><br></div> <div id="bloop_sign_1463759939743480064" class="bloop_sign"><div style="font-family:helvetica,arial;font-size:13px">-- <br>Adrian Zubarev<br>Sent with Airmail</div></div> <br><p class="airmail_on">Am 20. Mai 2016 bei 17:40:03, Matthew Johnson (<a href="mailto:matthew@anandabits.com">matthew@anandabits.com</a>) schrieb:</p> <blockquote type="cite" class="clean_bq"><span><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div></div><div>
<title></title>
<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>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></div></span></blockquote></body></html>