What I Learned Making My Own JIT Language
Sure, there are things that can be "poison pills" for performance, even in JITs. For example, another reason why my fib benchmark beats V8 is that V8 has to continually check if the fib function was redefined as a deoptimization check. I don't allow that in Vaiven, so I can produce faster code. Dart was designed to have fewer of these poison pills, for instance.Note to language designers: Reduce your language's poison pills. For those which can't be avoided, make them easy to profile!