<div dir="ltr">I disagree with the suggestion. Unlike C++&#39;s templates, a Swift&#39;s generic function is semantically a single function. One can say that together with a metatype parameter, we pass in witness table.<div><br></div><div>What I think we should do is make metatypes easier to use. <i>Adrian and I have a PR</i> that has already been waiting for almost a month: <a href="https://github.com/apple/swift-evolution/pull/553">https://github.com/apple/swift-evolution/pull/553</a></div><div>Plus, removal of .self could simplify such calls.</div></div>