4 ms·
It's a great move. The early development of Rust aimed to support Servo. However, it's still disappointing that the script engine uses SpiderMonkey, which is pu
by 9fwfj9r 6mo ago
It's a great move. The early development of Rust aimed to support Servo. However, it's still disappointing that the script engine uses SpiderMonkey, which is purely C++.
- tialaramex 6mo agoI mean SpiderMonkey works, and presumably is fairly self-contained, so I can see why replacing that isn't attractive unless you believe you can make it significantly better in some way.
- drzaiusx11 6mo agoIt's best not to try and eat the elephant in one bite, which is perhaps where this project went wrong initially. Maybe this is a symptom of learning from past mistakes rather than a flaw.
- saghm 6mo agoMy understanding is that the original intent of Servo was to be a way to develop features and port them over to Firefox itself (which did happen with at least a few features), and the relatively slower pace of developer is more due to Mozilla laying off everyone who was working on it. (Yes, presumably many of the same people are involved, but I would expect that being able to work on something full time without needing another source of income will end up making progress faster than needing to find time outside of work and balance between other things in life, ideally in a way that avoids burnout).
- drzaiusx11 6mo agoMy understanding was that from day one the desire was to make a complete "web rendering & layout engine" and only pivoted to shipping smaller sub-components like Stylo (stylesheets) when it appeared to be "taking too long." I followed the project from the early days through the layoffs, but I may be misremembering things.
- saghm 6mo agoInteresting, it's certainly possible I was never aware of the super early days.
- swiftcoder 6mo agoThere are what, 5+ rust javascript engines that claim to be production-ready? Bolting one of those on in place of spider monkey seems like a reasonable future direction
- mort96 6mo agoWhat do you mean by "production ready" here exactly? In a web browser context, the JS engine is expected to have a high performance optimising JIT compiler. Do the existing Rust JS engines have that?
- swiftcoder 6mo agoI honestly don't know, but they do say "production ready" on their marketing pages, so... For an example of what I mean, see JetCrab: https://jetcrab.com https://jetcrab.com
- mort96 6mo agoThat page says: > Complete JavaScript execution pipeline from source code parsing to bytecode execution. So it's a bytecode interpreter, not a JIT. It might still be production ready for a bunch of use cases. I may use it as a scripting layer for some pluggable piece of software or a game. I wouldn't consider it appropriate for a "production ready web browser" which intends to compete with Firefox and Chrome. EDIT: Also for some reason all its components are called v8_something? That's pretty off putting, you can't just take another project's name like that.. and from the author's Reddit comments it seems to be mostly AI slop anyway. I'm guessing Claude wrote the "production ready" part on the website, I wouldn't trust it.
- CryZe 6mo agoThis doesn't implement a JS engine, it's just a wrapper around boa.
- 8NNTt8z3QvLT8tp 6mo agoThere's something to be said for the security benefits of not having a JIT though. Especially if you've used Rust for the engine you should have pretty solid security.