Live data from Hacker News

Ladybird adopts Rust, with help from AI

ladybird.org

551–560 of 731 posts

Re: Ladybird adopts Rust, with help from AI

#551
post #441
post #15

> I used Claude Code and Codex for the translation. This was human-directed, not autonomous code generation. I decided what to port, in what order, and what the Rust code should look like. It was hundreds of small prompts, steering the agents where things needed to go. After the initial translation, I ran multiple passes of adversarial review, asking different models to analyze the code for mistakes and bad patterns.…

How does he solve the Fruit of the Poison Tree problem? For all he know, his LLMs included a bunch copyrighted or patented code throughout the codebase. How is he going to convince serious people that this port is not just a transformation of an _asset_ into a _liability_? And you might say that this is a hypothetical problem, one that is not practically occurring. Well, we had a similar problem like this in the rece…

One or both of you have the story very wrong.

If there was value (the guarantees) to this tech he buried a bunch of time in, he should be wrapping a natural language prompt around it and selling it.

Not even the top providers are giving any sort of tangible safety or reliability guarantees in the enterprise…

Re: Ladybird adopts Rust, with help from AI

#552

Earlier quoted context omitted.

It made a webmail client. Not a jmap library.

Not sure I understand, wouldn’t a webmail client in rust need client code like this or to use a library like this?

Yeah but it’s like saying, “why are you impressed with Claude making a car when there are plans for an engine online?”. Even if Claude used that code (it didn't), it made the whole car. Not just an engine. There’s a lot more stuff going on than simply calling a backend mail server over jmap.

And fyi, jmap is just a protocol for doing email over json & http. It’s not that hard to roll your own. Especially in a web browser.

Re: Ladybird adopts Rust, with help from AI

#553

Earlier quoted context omitted.

SDD is more like a subset. There are different ways to manage context in agentic engineering

> SDD Don’t do that ! On a two-day-old term?! No wonder we’re called gatekeepers.

Ok jeez, calm down. I am not shouldering all of the AI discourse lol.

Re: Ladybird adopts Rust, with help from AI

#554
post #417

I'm a long-time Rust fan and have no idea how to respond. I think I need a lot more info about this migration, especially since Ladybird devs have been very vocal about being "anti-rust" (I guess more anti-hype, where Rust was the hype). I don't know if it's a good fit. Not because they're writing a browser engine in Rust (good), but because Ladybird praises CPP/Swift currently and have no idea what the contributor's…

> I think I need a lot more info about this migration Doesn't sound like it's some Fish-style, full migration to Rust of everything. Seems like they are just moving a couple parts over for evaluation, and then, going forward, making it an official project language that folks are free to use. They note that basically every browser already does that, so this isn't a huge shakeup.

This makes sense because GUI wise Rust isn't really here yet (but it's close).

Re: Ladybird adopts Rust, with help from AI

#555
post #95
post #68

Earlier quoted context omitted.

> Coding assistants are also really great at porting from one language to the other I had a broken, one-off Perl script, a relic from the days when everyone thought Drupal was the future (long time ago). It was originally designed to migrate a site from an unmaintained internal CMS to Drupal. The CMS was ancient and it only ran in a VM for "look what we built a million years ago" purposes (I even had written permissi…

> 10/10 - would generate tens of thousands of lines of useless code again. Me too! A couple days ago I gave claude the JMAP spec and asked it to write a JMAP based webmail client in rust from scratch. And it did! It burned a mountain of tokens, and its got more than a few bugs. But now I've got my very own email client, powered by the stalwart email server. The rust code compiles into a 2mb wasm bundle that does ever…

Did you use dioxus? I had claude write up a test web app with it, but when attempting to use a javascript component it built it couldn't get past memory access out of bound errors.

Re: Ladybird adopts Rust, with help from AI

#556
post #545

Earlier quoted context omitted.

This may be a bit too pedantic, but I consider interface {} to be a way to do polymorphism via type classes. Interface defines an open class of types which implement some interface. Sum types are a type definition defining something as A or B. Not “anything that quacks like a duck”. But concretely “one of this or one of that”. This enables different syntax, like the match expression to be used, in which you exhaustiv…

> Interface defines an open class of types But can also define a closed set of types, perfectly satisfying "sum types". > This enables different syntax, like the match expression to be used, in which you exhaustively list all the variants. Go does not provide this out of the box, but that is not prerequisite for sum types. The mathematical theory says nothing about "the compiler must produce an error if the user does…

By that definition a void* pointer in C is a sum type. By that definition assembly has sum types.

This argument feels like the “we have sum types at home” meme. Ergonomics matter.

I write a lot of rust. Rust has traits which are similar to Go’s interfaces. But the features aren’t the same, and I use enum all the time. (I also use trait all the time, but I use trait and enum for different things).

Re: Ladybird adopts Rust, with help from AI

#558
post #249

Earlier quoted context omitted.

Upside: he's learning?

Indeed, and as a school those 18 months are well worth it, but it is in many ways also 18 months wasted. There is a strong sense of NIH with the Ladybird dev(s), and I wonder if that isn't their whole reason for doing this. I've seen another team doing something similar, they went through endless rewrite cycles of a major package but never shipped, and eventually the project was axed when they proposed to do it all o…

The sense of NIH is from Serenity, and that was probably the reason for Jakt's existence too. Now it's spun off into its own project there is a lot more pragmatism.

Re: Ladybird adopts Rust, with help from AI

#559

Earlier quoted context omitted.

Exactly my thought! I guess I'll keep Firefox for the foreseeable future...

Firefox is already spying on you with a lot of telemetry, and they have recently amended their terms of use to remove the obligation to "never sell your data" [1]. So perhaps you should reconsider that statement. [1] : https://news.ycombinator.com/item?id=43213612

Surely nobody's using them forks which exist for no reason whatsoever.
Post reply on HN