← Back to context

Comment by anonnon

2 days ago

Clearly, the fact that Servo failed must be indicative of shortcomings in Mozilla itself, and not Rust the language, its ecosystem, or its users.

The language surely has many cons, like any language out there. And maybe it wasn't a good fit for Mozilla products. But Mozilla the organisation doesn't really looks that great in term of governance. Given Rust is now even integrated officially in Linux kernel, I have strong doubt that the technical caveats are the main factor of misalignment with Mozilla priorities.

Did it fail? The servo project seems alive and well, just not under Mozilla. They decided CEO pay packages were more important.

  • > Did it fail

    13 years to get to v0.0.1 is a success? Look at how much progress Ladybird has made in a fraction of that time. Remember that these people are constantly starting rewrites of C and C++ projects (when they're not demanding others do it) in Rust "for safety" (and "oops it's MIT now"), even of ancient Unix utilities with minimal attack surfaces like the "date" command, yet when it comes to a browser rendering engine, which entails computationally-intensive, aggressively-optimized rendering of untrusted input--a massive attack surface, and the very thing for which Rust was supposedly designed--they somehow can't get the right combination of enough Rust zealots (and Adderall) to get past the finish line.

    • Success isn't a binary thing. It's true that Servo has long struggled to make progress, and that can be seen as a failure. It's recent progress can also be seen as a success.

      Your life might improve if you stop believing that Rust devs belong to a cult of your own imagination.

      1 reply →

Mozilla was the primary steward of Rust for most of the time that the Servo project was active. So if you want to lay Servo’s failure at the feet of the Rust language, it’s pretty hard to cast Mozilla as the blameless victims of… whatever it is that Rust users as a whole did to make Servo fail.

There are architectural concerns. Even when Rust proponents and cultists try to harass unrelated projects into submission, as they are wont to do.

https://github.com/microsoft/typescript-go/discussions/411

  • TS decision to choose Go was primarily, because they could take the existing code and do a near 1-1 translation. You can frame that as an architectural concern, but it's really only one that applies when your attempting to migrate an existing program to a new language. The Go rewrite has some negative outcomes as well, most concerning is the performance of the WASM builds is worse than the old JS/TS version.

    A TS compiler from scratch built in Rust would be fine.

    > cultists

    The cult is in your imagination.

    • Not your parent commenter but:

      > You can frame that as an architectural concern...

      "Go also offers excellent control of memory layout and allocation (both on an object and field level) without requiring that the entire codebase continually concern itself with memory management."

      "The TypeScript compiler's move to Go was influenced by specific technical requirements, such as the need for structural compatibility with the existing JavaScript-based codebase, ease of memory management, and the ability to handle complex graph processing efficiently. "

      If memory management and ability to handle complex graph processing efficiently isn't related to architecture to you I don't know what to tell you.

      [0] https://github.com/microsoft/typescript-go/discussions/411

      > The cult is in your imagination.

      CTRL+F "rust" on the Go issue and see how many results you get. 31 for me and that's before expanding spam.

      5 replies →