It's not on the short term roadmap because we've scoped it to clang 3.6 x64 Ubuntu while we stand up the branch but we're trying to keep our code changes for the port pretty generic.
From the Roadmap document - it seems like JIT on Linux is not a priority? That's surprising. Is it due to technical issues or the whole idea is to have NodeJS on Windows use Chakra and let the community do the Linux part with JIT?
The first step is to get the runtime and interpreter running. Next step is to bring the jit up.
Chakra is the hybrid engine where we have the interpreter, simple jit and full jit. The interpreter is the one which does all the profile data collection. Profile data is required to get the quality jit code.
Hi! Thanks for explanation and another cool product!
One question that just came to my mind regarding this: Have you thought about a configurable/modular build where this interpreter/simple jit/full jit can be switched? Or is this perhaps already there?
I can think of some use cases where it would be interesting to build a modern and full featured JS engine in interpreter-only mode. E.g. to integrate it into platforms which don't allow JIT (iOS), to reduce the footprint or the attack surface. Or to be able to port it the other platforms without much effort - in the embedded domain there are still other processors than x86 and arm and other OSes than Windows, Linux and OSX floating around.
Why design the engine first released in 2011 under a completely closed culture to be portable for its eventual open-source release five years later? I understand the appeal of the thoughts behind what you said, but you shouldn't burn time on things you don't foresee being an issue.