Hacker News new | past | comments | ask | show | jobs | submit login

I distinctly recall Servo presentation in 2012. It started: "web browsers are written in C++. It is bad for humanity."

Web browsers are still written in C++. It is still bad for humanity.

Emphasis on mixred reality may or may not solve that problem sooner. Sometimes the quickest way can seem roundabout. But I am skeptical.




The OP blog entry is so inundated with PR speak it is hard to read the actual message from it.

What I'm reading from the top comment here is that the actual point is to focus Servo on VR and Mixed Reality, because it will pull Servo even more in the direction it was always supposed to go in. That is to create a browser that outperforms everything else by leaps and bound by being able to more easily take advantage of multicore processors. VR and Mixed Reality require 90 fps in order to work properly for users, so this is a very high and a completely hard baseline for Servo to have to hit. So it's about setting a loftier goal and a higher bar to meet in order to make sure Servo reaches it's original goal of great performance by way of parallelism.


I think, that does actually work out.

The problem for humanity is not that browsers are written in C++, it's that browsers have lots of security vulnerabilities.

Being written in C++ is not helpful with that, but it's not integral to the problem. It's not impossible to produce C++-code that doesn't have vulnerabilities, it just requires a lot of effort and often years of battle-testing to close all of them.

But Firefox's source code has for the most part had those years of battle-testing. It's probably safer than if you'd completely rewrite it in Rust, at least in the short term.

Where the use of Rust can deflect most vulnerabilities is in new code. And that's what Mixed Reality is. It's gonna need to be in the browser at some point in the near future and it is a big chunk of new code. It also has harsh performance requirements, meaning they'll have to work with parallelism, which is where C++ is particularly error prone.


So we continue to play wack-a-mole with the C++ codebase rather than develop in a language that makes whole classes of exploits impossible?

Firefox is not safe. It’s been routinely exploited by law enforcement and hackers alike.


Trust me, if Mozilla actually had a choice in the matter, they would opt for just having it all in Rust, too.

But there is no choice. Rewriting Firefox from scratch is going to take decades. Firefox has to continue to function in the meantime. They do occasionally replace components with equivalent Rust components from Servo, and that's so far been a great success, but it's still scary as all heck to take a software that millions of people depend on in their daily life and wholesale replacing the CSS engine, URL parser or media decoder in it.

Besides that, it's not like Chrome/Opera, IE/Edge or Safari are bastions of security. Users can't go anywhere that's decisively safer.


It was wrong then, it remains wrong now.

Plenty of warts in C++, but at the end of the day, along with C, it is the systems language that powers 99% of the world's computing infrastructure at any level that's not a CRUD app or a throwaway script.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: