<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Sure, here's the start of the thread: <a href="https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20151207/001856.html" class="">https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20151207/001856.html</a><div class=""><br class=""></div><div class=""><br class=""><div><blockquote type="cite" class=""><div class="">On Jan 3, 2016, at 9:10 PM, Matthew Johnson <<a href="mailto:matthew@anandabits.com" class="">matthew@anandabits.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div class=""><br class=""><blockquote type="cite" class="">On Jan 3, 2016, at 9:08 PM, Drew Crawford <<a href="mailto:drew@sealedabstract.com" class="">drew@sealedabstract.com</a>> wrote:<br class=""><br class=""><blockquote type="cite" class="">Existentials for protocols with Self and / or associated type requirements would require bindings for Self and / or the associated type(s). At least when you use a member that contains Self and / or an associated type in its signature. So the previous example will always fail to compile. <br class=""></blockquote><br class="">Not true. Joe Groff:<br class=""></blockquote><br class="">Can you point me to the source? I would like more context around these comments.<br class=""><br class=""><blockquote type="cite" class=""><br class=""><blockquote type="cite" class="">This seems like it would be addressed just by allowing Factory to be used as a dynamic type, with its Product type generalized to Any. We'll be set up to support that with some runtime work to store associated types in protocol witness tables (which is also necessary to fix cyclic conformances, one of our Swift 3 goals).<br class=""></blockquote><br class=""><br class=""><blockquote type="cite" class="">Yeah, when generalizing a protocol type, we ought to be able to either generalize the associated types to their upper bounds, for use cases like yours, or constrain them to specific types, for the AnyGenerator<T> kind of case.<br class=""></blockquote></blockquote><br class=""></div></div></blockquote></div><br class=""></div></body></html>