Live data from Hacker News

Ladybird browser to start using Swift language this fall

twitter.com

131–140 of 205 posts

Re: Ladybird browser to start using Swift language this fall

#131

What happened to jakt?

Regardless of where jakt goes, it would never be qualified for this; Ladybird is doing its best to get rid of everything home-built that is not the web-platform.

(Also it's a really young language with <5 recurring contributors, of course it's not even on the radar :)

Re: Ladybird browser to start using Swift language this fall

#132

Earlier quoted context omitted.

I strongly disagree. This is not a justified decision, they just feel like it based either on vague and speculative reasons, or because they are funded to do so, I would not be surprised if they had discussions with the Swift marketing team.

Can you back up this claim? Knowing what I know of both Andreas and the Swift team I find this comment incredibly bizarre. You either know something the rest of us don’t or you have made an emotional outburst in the form of an insult.

I don't know. This is speculation on my side.

But they recently announced funding as a non-profit, as a few days later, they switch to Swift.

Following the money is a good way to explain seemingly irrational decisions, at least as a first order approximation.

Re: Ladybird browser to start using Swift language this fall

#133

Earlier quoted context omitted.

I'd drop the "long-lived" and "short-lived" from the first two points. Rust is great for long lived programs, and is extremely clunky for managing any kind of object graph in general. The lifetime of the program has little to do with it, so I'm confused by those qualifiers. I've written plenty of Rust software that has run uninterrupted for years. I've seen way more people complaining about Rust evangelism and toxici…

> I'm starting to wonder if the Rust toxicity and evangelism are more meme than reality. Doubtful. If you're running a somewhat known FOSS C or C++ project, chances are you've had to close issues from Rust fanatics aggressively urging you for a rewrite, and shaming you if you object. Nothing has changed in that regard.

I do, and I haven't.

Re: Ladybird browser to start using Swift language this fall

#134
post #7

============================== Andreas Kling @awesomekling · 44m My general thoughts on Rust: - Excellent for short-lived programs that transform input A to output B - Clunky for long-lived programs that maintain large complex object graphs - Really impressive ecosystem - Toxic community ==============================

Interesting re complex projects. Compared to other langs I've used, rust gives me more confidence in maintaining and refactoring complex projects, maintaining state etc. I think this is due to the strict type checks, the helpful compile errors, and the ownership system. Maybe also due to the robustness of what I call struct-and-enum-oriented programming. I have plenty of my own beefs with rust that I won't go into he…

> Compared to other langs I've used, rust gives me more confidence in maintaining and refactoring complex projects

In my humble experience, Rust gives me great confidence that my refactoring will likely be correct, but the type system makes refactoring anything moderately complex very difficult. I tend to paint myself into corners, and the compiler, in it's religious oath of correctness, won't allow a mortal like me to get away with it.

I guess you can dismiss that as a skill issue, but Rust feels like a language that is very tough to iterate with. It's probably something I will reach for when I'm sure of what exactly my program will do, and how it will do it.

Re: Ladybird browser to start using Swift language this fall

#135
post #89

Earlier quoted context omitted.

> Rust Evangelism Strike Force I realize this is not what people generally are referring to when they complain about the Rust community, but this is the part that annoys me. Feels like every damn day I see people preaching the Good News of Rust, pointing to things as being the unique and sole property of their preferred language. Except those things have been around for ages, in other languages. Memory safety? Invent…

> Golang Evangelism Strike Force Concurrency? Invented by Go! (quickly corrected by Elixir/Erlang strike force, but these, just like Golang, have worse throughput than a particular C family language I have a soft spot for). Apologies, could not help myself as this response is amusing if sadly accurate (I do like Rust, but blind hostile evangelism tends to create the opposite to the desired outcome).

Elixir strike Force member here. Minor correction, concurrency wasn't invented by elixir, it was just perfected by it ;-D

(That's a joke for the record. Elixir mainly uses erlang's stuff, and it's based on the actor model, which was not invented by elixir or erlang. I do personally love it though, I believe it to be a great implementation.)

Re: Ladybird browser to start using Swift language this fall

#136
post #4

I would have thought that Ladybird would be using a language that specifically guarantees memory safety which is Rust. But Swift is a very surprising choice but actually makes sense for a browser. The browser story is not great for Rust as we can only point to Servo which isn't ready to be used as a daily driver for millions of users. But Arc Browser is written with a combination of Swift and C++ to run on macOS and…

Swift is memory safe. The C++ interop thing I think is massive. But isn’t there also the problem that with Rust you can’t have the equivalent of shared pointers, so you can only have a single reference to one object (sorry I don’t really know Rust, just going from how this has been described to me) which apparently makes representing things like DOMs and abstract syntax trees an absolute nightmare?

there are also classical shared pointers in rust: https://doc.rust-lang.org/std/cell/struct.RefCell.html

Re: Ladybird browser to start using Swift language this fall

#137
post #44
post #7

============================== Andreas Kling @awesomekling · 44m My general thoughts on Rust: - Excellent for short-lived programs that transform input A to output B - Clunky for long-lived programs that maintain large complex object graphs - Really impressive ecosystem - Toxic community ==============================

I love Rust but have to agree that there is a lot of truth in all of those. The Rust community really should take a look at more welcoming and diverse communities like the Ruby and PostgreSQL communities. Not sure though what can be done to make handling long-lived state less clunky.

What about the Rust community is not welcoming? Ruby has had its fair share of community controversies, so that's an odd choice for comparison.

Re: Ladybird browser to start using Swift language this fall

#138
post #126
post #85

Earlier quoted context omitted.

GC still has the downside of higher memory overhead. While I’m not particularly a fan of Swift, this is a relevant argument for a general-purpose browser implementation.

Reference counting is also a GC algorithm, even though people pretend otherwise, as they seldom learn from CS literature. Plus all systems languages with GC, including C#, can do C and C++ style memory management.

This is an old argument, and it’s well understood that “GC” by default refers to tracing GC and delayed collection. (Without delayed collection, there arguably isn’t any “garbage” in the first place.)

“Can do C++ style memory management” is very different from what happens when coding in the default idiomatic style of the language and when using existing libraries written in the language. What happens by default is a relevant consideration.

Re: Ladybird browser to start using Swift language this fall

#139

Earlier quoted context omitted.

> - Toxic community I think a lot of this is just rumors and maybe one or two high profile people. When I go to discord servers for rust and rust libraries, the help I get is as good as, if not better than support from companies I literally pay.

For years, whenever there was drama and shit-flinging in the OSS world, i looked up the people causing that on github and blocked them. Github has this feature that it warns you when you look at a repository where people you blocked contributed. If you keep such a list, you'll easily recognize projects you better stay away from. For me, this was one of the reasons to keep away from Rust.

My point was just about my actual experience with the community versus what everyone says about it. There is a lot of excitement I've noticed which seems to bother some people but I've never had anyone outright call me an idiot or anything and I always get help when I ask for it.

Re: Ladybird browser to start using Swift language this fall

#140

Earlier quoted context omitted.

> I'm starting to wonder if the Rust toxicity and evangelism are more meme than reality. Doubtful. If you're running a somewhat known FOSS C or C++ project, chances are you've had to close issues from Rust fanatics aggressively urging you for a rewrite, and shaming you if you object. Nothing has changed in that regard.

I do, and I haven't.

[deleted]
Post reply on HN