▲ | lordofgibbons 4 days ago | |||||||
Maybe a stupid question but: given the massive vulnerability surface area that a browser presents, why would one choose to build it in C++ instead of something memory and concurrency safe like Rust? I know Rust doesn't automatically make the software safe, but it does rule out a very large % of the exploitable vulnerabilities allowed by unsafe languages like C and C++. | ||||||||
▲ | wojtek1942 4 days ago | parent | next [-] | |||||||
Why build a new browser in C++ when safer and more modern languages are available? [1] > Ladybird started as a component of the SerenityOS hobby project, which only allows C++. The choice of language was not so much a technical decision, but more one of personal convenience. Andreas was most comfortable with C++ when creating SerenityOS, and now we have almost half a million lines of modern C++ to maintain. > However, now that Ladybird has forked and become its own independent project, all constraints previously imposed by SerenityOS are no longer in effect. > We have evaluated a number of alternatives, and will begin incremental adoption of Swift as a successor language, once Swift version 6 is released. [1] https://ladybird.org/#faq:~:text=Why%20build%20a%20new%20bro...? | ||||||||
| ||||||||
▲ | npalli 4 days ago | parent | prev [-] | |||||||
Who knows, maybe they cared about shipping a working product and not spend all their time fighting the borrow checker and harassing everyone else about memory safety. See Servo for ex. |