<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 7, 2015, at 3:04 PM, Jacob Bandes-Storch <<a href="mailto:jtbandes@gmail.com" class="">jtbandes@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class=""><div class="gmail_extra"><div class=""><div class=""><div dir="ltr" class=""><div class="">On Mon, Dec 7, 2015 at 3:01 PM, Chris Lattner via swift-evolution <span dir="ltr" class=""><<a href="mailto:swift-evolution@swift.org" target="_blank" class="">swift-evolution@swift.org</a>></span> wrote:<br class=""></div></div></div></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word" class=""><span class="">On Dec 7, 2015, at 12:01 PM, Dmitri Gribenko via swift-evolution <<a href="mailto:swift-evolution@swift.org" target="_blank" class="">swift-evolution@swift.org</a>> wrote:</span><span class=""><div class=""><blockquote type="cite" class=""><div dir="ltr" class=""><div class="gmail_extra"><div class="gmail_quote"><div class="">I personally don't see a point in going as high as 12 tuple elements. About 4 or 5 makes sense to me. Given that Swift does not have variadic generics right now, these long tuples have to be defined by someone manually. If one is defining a tuple that is that long, I'd argue that they should be using a custom struct instead.</div></div></div></div></blockquote><br class=""></div></span><div class="">I tend to agree with Dmitri here. Independent of the code size concern, what is the expected use-case for > 4 element tuples?</div><div class=""><br class=""></div><div class="">-Chris</div></div></blockquote><div class=""><br class=""></div><div class=""><br class=""></div><div class="">On the contrary, I think >4-element-tuples are useful exactly *for* the case of custom structs. You wouldn't want the tuples themselves to be part of your API, but if you have a custom struct with 4+ Comparable fields, you can implement its < operator as simply "return (a1,b1,c1,d1,e1) < (a2,b2,c2,d2,e2)”.</div></div></div></div></div></blockquote><br class=""></div><div>Sure, or:</div><div> return (a1,b1,(c1,d1,e1)) < (a2,b2,(c2,d2,e2))</div><div><br class=""></div><div>:-)</div><div><br class=""></div><div>-Chris</div><div><br class=""></div><br class=""></body></html>