A lot of the previous calculus around refactoring and "rewrite the whole thing in a new language" is out the window now that AI is ubiquitous. Especially in situations where there is an extensive test suite. Testing has become 10x as important as ever.
Well, I am on the provocative side that as AI tooling matures current programming languages will slowly become irrelevant. I am already using low code tooling with agents for some projects, in iPaaS products.
Ladybird adopts Rust, with help from AI
511–520 of 731 posts
Re: Ladybird adopts Rust, with help from AI
#512> 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.…
No, they are quite terrible at doing that.
They may (I guess?) produce code that compiles, but they will, almost certainly not produce the appropriate combination of idioms and custom abstractions that may the code "at home" in the target language.
PS - Please fix your blockquote... HN ignores single linebreaks, so you have to either using pairs of them, or possibly go with italicization of the quoted text.
Re: Ladybird adopts Rust, with help from AI
#513Earlier quoted context omitted.
Using interface as it was designed to be used offers first-class sum types. Although not all interface use equates to sum types. But they're not tagged unions. I expect that is still where your confusion lies. Tagged unions and sum types are not equivalent. Tagged unions are a subset of sum types.
I'm curious, if tagged unions are a subset of sum type, what is your definition of "sum type"? AFAIK, tagged union is sum type, based on sum type mathematical definition.
Re: Ladybird adopts Rust, with help from AI
#514Earlier quoted context omitted.
> Any tool that can plug into MLIR and use LLVM, can potentically produce fast code. I guess that's sort of technically true, but not even really? Like, obviously you can compile Python to C and then compile that with clang, but it doesn't make it fast. But even if that were the case, there aren't that many languages that have Rust performance so who cares? "Potentially" is sort of saying we might have a future langu…
It doesn't need to win the benchmarks Olympics, it needs to be fast enough. Plenty of AI based tooling is already trying out this path. Agents execute actions that in the past would be manually programmed applications, now tasks can be automated given a few mcp endpoints. LLMs are already at the same output quality of lousy offshoring companies, thus having to fix a bit of it is something that unfortunately many of u…
> Well, I am on the provocative side that as AI tooling matures current programming languages will slowly become irrelevant.
And I said I disagree because language directly impacts things like performance. And it does, massively. Like, order of magnitude differences are not hard to achieve simply by changing language.
You are now saying that things just need to be "fast enough", but I don't get how that's relevant. The point is that a different language will have different tradeoffs, and AI changes some of the calculus there, but language is still a major component of the produced artifact. If you agree that language has major implications on the produced artifact, then we agree. If you don't, then I'll just once again appeal to the massive performance gaps between different languages.
I still am not understanding the offshoaring conversation.
Re: Ladybird adopts Rust, with help from AI
#515Sigh agents keep killing all the passion I have for programming. It can do things way faster than me, and better than me in some cases. Soon it will do everything better and faster than me.
Despite the many claims to the contrary, agents can't do anything better than a human yet. Faster, certainly, but the quality is always poor compared to what a human would produce. You aren't obsolete yet, brother.
Re: Ladybird adopts Rust, with help from AI
#516Earlier quoted context omitted.
Re "is fast as can be": in my experience generating C/Zig code via Codex, agent generated code is usually several multiples slower than hand optimized code.
Given parent and GP are both using Claude... have you tried Claude? (I say this as someone who has not tried Claude recently. I did try Claude Code when it first came out, though.)
RE: Claude Code, no I haven't used it, but I did do the Anthropic interview problem, beating all of Anthropic's reported Claude scores even with custom harnesses etc.
It's not a dunk that agents can't produce "as fast as can be" code; their code is usually still reasonably fast; it's just often 2-10x slower than can be.
Re: Ladybird adopts Rust, with help from AI
#517Earlier quoted context omitted.
> Ladybird praises CPP/Swift currently Not anymore. https://news.ycombinator.com/item?id=47067678
They are moving fast. Next month it will be yet-another-language. Eventually they come full circle and settle for either C or C++.
Re: Ladybird adopts Rust, with help from AI
#518The byte-for-byte identical output requirement is the smartest part of this whole thing. You basically get to run the old and new pipelines side by side and diff them, which means any bug in the translation is immediately caught. Way too many rewrites fail because people try to "improve" things during the port and end up chasing phantom bugs that might be in the old code, the new code, or just behavioral differences.…
Re: Ladybird adopts Rust, with help from AI
#519Re: Ladybird adopts Rust, with help from AI
#520Earlier quoted context omitted.
Doesn’t sound like a bad thing to evaluate the most obvious alternative to build confidence before officially pulling the plug.
The most obvious alternative would be Zig. I don't see any Swift adoption outside the Apple ecosystem.