<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="">
<div>
<blockquote type="cite" class="">More of a swift-dev topic. &nbsp;CC'ing there, BCC'ing evolution.</blockquote>
<br class="">
</div>
<div>Thanks!</div>
<div>I’ll track the issue over there.</div>
<div><br class="">
<blockquote type="cite" class="">I do have to note that this is a very strange of writing Nat. &nbsp;Why recurse through a protocol type instead of recursing concretely?<br class="">
</blockquote>
</div>
<br class="">
<div class="">My examples are extracted from a more complex codebase that requires such intricacies (<a href="https://github.com/kyouko-taiga/LogicKit" class="">https://github.com/kyouko-taiga/LogicKit</a>&nbsp;for those who might be interested). The protocol is
 there to represent multiple kind of ADTs that might coexist in a substitution map.</div>
<div class=""><br class="">
</div>
</body>
</html>