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

Reply via email to