On Wed, Jul 2, 2014 at 6:17 PM, Matt Oliveri <[email protected]> wrote:
> You don't know all the types at compile time with polymorphism either, > if I understand what you mean. So I don't think that's the issue. > Actually, you do. Perhaps not at unit-of-compilation compile time, but certainly at link time. This is *not* true in a fully dependent type system. And just incidentally, the original BitC implementation provides a proof by example. We implement parametricity by polyinstantiation. Works just fine. There's further work we need to do to recover sane code size from that, but we know how to do it. If you have unboxed types and parametricity/genericity in the same language, you're pretty much forced to polyinstantiation. You can make the instantiation happen pretty late and on-demand, but you're definitely going to do it before any code at a given concrete resolution of a type scheme actually gets to execute. shap
_______________________________________________ bitc-dev mailing list [email protected] http://www.coyotos.org/mailman/listinfo/bitc-dev
