Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I can’t wait until Servo has spun up sufficiently. https://servo.org/


In the latest Ladybird update the graphs show servo is quite a bit behind Flow and Ladybird itself.

Right now ladybird is the closest to getting past the mark and has the most momentum by a long shot.

As great as having another option would be, Servo is not a browser, if people were going to build a browser on a different engine then webkit is perfectly viable right now, but people don't.


Ladybird is not closer than Servo from achieving anything, because the wpt tests scores are not that relevant sinc they are not weighted by any usefulness factor.

The Ladybird team are very good at marketing themselves but their technical choices are questionable. Who can think that it's a good idea to start a new web runtime in C++? They said they would switch to Swift but that doesn't seem to happen if you look at the recent commit history.


I mentioned momentum for a reason, servo doesn't have any. Ladybird however is extremely actively developed.

> Who can think that it's a good idea to start a new web runtime in C++?

Swift wasn't ready and clearly they dont like rust for this application, swift might still not be ready on non-apple platforms although it does look very promising.

Go look at the ladybird source, it's not the C++ you and everyone who shouts "unsafe" thinks it is.

And I took all of a day and less than a thousand lines to find UB in safe rust, so don't even bring up the UB argument. In case you are wondering, a str with invalid UTF-8 may cause UB, it's not unsafe to handle a str and they sure aren't going to put checks everywhere for it so they just hope that whoever handed you that str didn't encoded it some other way.

Now at least the only safe ways to parse a str actually involves checking but that means I need to now trust every single library that passes me a str to make sure they didn't parse it in an unsafe manner, and UB that I cannot be aware of might exist in my code, sound familiar?


> a str with invalid UTF-8 may cause UB, it's not unsafe to handle a str and they sure aren't going to put checks everywhere for it

Any way I know of for making a str from bytes is checked or unsafe, even slices (by byte indexes) are checked (panic). Is there a current example that hasn't been fixed at the language level where this invariant can be broken without unsafe?


It's not about me parsing or creating a str. It's about the 100 dependencies every rust project has which might hand me a str that wasn't parsed safely.

I can avoid UB in my own C++ code too, the fact that the language has UB is a reason I even look at other options from time to time. To find UB in such a fundamental part of safe Rust was truly a surpise to me.

It feels like they could have very easily just made it a byte slice and said it's up yo you to validate, instead they decided it has to be valid UTF-8 or it's UB.


> I mentioned momentum for a reason, servo doesn't have any. Ladybird however is extremely actively developed.

Looking at https://github.com/servo/servo it's very actively developed and gaining new contributors. The number of contributors for both projects is very similar. They are both active.


Ladybird is significantly newer, has 10k more total commits and double the commits in the last 24 hours.

I'm not going to actually go and do a study because I actually have better things to do than be right on the internet but you have to provide a stronger argument than that.


Agreed that (a) it’s not a browser and (b) it’s not ready for prime time. In the meantime it’s great that there is a diversity of options. But I am glad there are new engines being worked on in the wings, and I think servo has potential to be a pretty solid one especially with its parallel rendering.


I agree. I would love to see ladybird and servo based browsers, I would even install both just like I currently use Safari and Chromium based and Firefox derived.


Performance benchmarks don't include security. I'd be very afraid of a new C++ based browser.


Turns out Mozilla’s abandonment was a blessing in disguise.




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

Search: