Ladybird Browser adopts Rust

https://lemmy.world/post/43504233

Ladybird Browser adopts Rust - Lemmy.World

cross-posted from: https://lemmy.bestiver.se/post/946316 [https://lemmy.bestiver.se/post/946316] > Comments [https://news.ycombinator.com/item?id=47120899]

Unbelievable
Why?
Because as the article stated they have rejected Rust back in 2024. I can remember that clearly. Back then they gave some few reasons why Rust was not a good fit, i dont remember the details but for me it made an overall impression that they dont like Rust and wont go with it ever. So what a surprise to read that huh!
@Czele @Leny it's just AI transpiled, that's not much more than a refactor.

Andreas did not like the Rust community. It sounds like that is still true.

He also thought that Rust integrates poorly into project with a deep C++ OOP hierarchy. That is probably still true as well.

It is telling that the first project was a total rewrite of the entire JavaScript engine. There is no shared hierarchy and a well defined boundary between the C++ and Rust code. That may be a sign of things to come.

We may see entire modules that are either all Rust or all C++ rather than more fine grained mixing.

He also thought that Rust integrates poorly into project with a deep C++ OOP hierarchy. That is probably still true as well.

Is there any language that can do that? As far as I know there isn’t. You can use SWIG or whatever but it’s just as awful as any Rust/C++ interop. There’s Carbon, but that’s a work in progress.

IMO if you need integration with a deep C++ OOP hierarchy your options are a) give up and just use C++, or b) pain, no matter what language you target.

They just abandoned the previous project of moving to Swift.

There’s also the issue of trying to manage a project rewrite while the project itself is under continuing feature development. Many projects have failed at that in the past because the rewriting effort is so much of a moving target and because a team split between the sides can develop a lot of friction and conflict points.

I really want them to succeed. I think it’s pretty amazing what they’ve achieved so far with Ladybird, just as a proof that it is indeed possible to write a brand new browser engine from scratch on web standards. I also think it’s extremely important that we have some mitigation against abusive behaviour by Google & Apple, however small it may be with a hobbyist browser like Ladybird.