Hi,
(Answering privately until I get more manager intent to get this project as
part of any long term roadmap)
For your information, I am currently looking, on my spare time, at one way
to get SpiderMonkey to be rewritten in Rust. (*)
Currently SpiderMonkey is one big monolithic pieces of code. Everything in
SpiderMonkey is entangled in a way which does not give much room for making
simple components without thousands of bindings going both ways. Cretonne
might be the exception in this haystack, but at the cost of duplicating a
lot of code which already exists (which makes me even more worried security
wise, even if it is written in Rust).
SpiderMonkey would never switch to Rust if we have no way to see any
fast-execution outcome at the end of the integration.
Currently the burden of maintaining the Jit is huge. We see the cost of the
integration every time we have to fix a performance bug, and every time a
new language feature is added in the language.
Based on these claims, I figured that there is one thing that we should
rewrite first, even before the interpreter, this would be the JIT and the
GC. I think the Rust community is likely to work on a GC integration in the
next few years, but I do not forsee any good Jit.
So I started working on a Rust project to solve the maintainability issues,
the performance issues, and to make a Jit engine which would work
independently of the runtime (library functions, object model, GC).
I intent to release it (silently) as soon as I get a working prototype.
If you know anybody who my help pushing this project forward, I would be
happy to contact them privately.
(*) From what I understand, saying that publicly would result in me getting
badly evaluated by higher management layers (as it already happened with a
bonus cut) for not focusing on Mozilla goals, and that even if this is a
spare time project.
--
Nicolas B. Pierron
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform