On Tue, Jul 30, 2013 at 2:40 PM, David Jeske <[email protected]> wrote:
> > First, as I've mentioned elsewhere, [passing traits by explicit paramater] >> simply doesn't work (pragmatically) when unboxed types are admitted into >> the language. Second, this induces a requirement for whole-program >> compilation in order to inline the instances. > > > Can you explain why this is? I'm assuming the CLR, with JIT, polymorphic > inline caches, parametric instantiation. Why would this require > whole-program compilation or create an inlining problem? > The example that you gave is fine, and subject to your assumptions above, I think that what you say is feasible. But note that JIT compilation effectively *is* whole program compilation! What am I missing? > What I think is missing here is that you're using a very big, complicated, unsafe system (the JIT compiler) to implement an allegedly safe program. The JIT system itself is part of the attack surface of every application (as Google has found out the hard way). A static compiler isn't necessarily simpler, but operates under less performance pressure, and therefore has more freedom to keep track of types as it works. shap
_______________________________________________ bitc-dev mailing list [email protected] http://www.coyotos.org/mailman/listinfo/bitc-dev
