Comment by usef-
9 hours ago
They also have made a release, in a sense, since they moved all Claude code users to it a month ago. (And apparently no one noticed).
I think they're taking things "gradually" as they are under a lot of scrutiny and no rush for full release.
Claude Code has a huge userbase. This is an impressive result so soon after the rewrite.
This is an impressive milestone for their rewrite. There are a lot of comments trying to downplay this as being unimpressive for some reason, but I can’t see them as anything other than sour grapes because the rewrite hasn’t crashed and burned like they were hoping.
It's just blind AI hate for no rhyme or reason. I've ported projects from one language to the next using Claude Code long before Bun even did this, it's very trivial for an LLM. In the case of Bun though, they have a test suite to run the entire codebase against, and so long as all of those tests pass, there's and drastically more likely chance that its correct.
Seems to be more level skepticism to me. Not "blind hate".
The LLM translation of serenity brower's javascript engine to rust and bun's translation to rust actually provide an interesting set of open source projects to compare and contrast. While there will obviously be some blind hate, there is difference in commentary on the two projects. In technical details, Adreas'/Jared's approaches and communication. That all shows me there is substance to the criticism that isn't just AI naysaying.
I've had several bun-related crashes in Claude code in the last week, which I don't remember ever seeing before then.
Does it print a bun.report link and can you paste it? I will investigate.
Claude Code most likely only uses a tiny fraction of Bun/Node features, so Claude Code switching to the Rust rewrite doesn't mean all that much.
Look, I understand being skeptical of the whole process; the discourse about this has been extremely tiring.
But at some point if “moving one of the biggest actively maintained and used codebases to it without anyone noticing” is dismissed as “it doesn’t mean all that much”, then we’ve lost the plot a little bit somewhere.
It's the equivalent of porting Unreal Engine 5 to another language and then using it exclusively to run a 2D Tetris clone. Let's wait for the next Bun release when more real-world code is hammering it before declaring victory.
(also, fwiw, a manual rewrite would be under the same scrunity and suffer from the same skepticism, at least when obviously rushed).
13 replies →
Claude Code client isn't one of the biggest actively maintained and used codebases. If it is one of the biggest, that's showing AI's tendency to waste its own tokens and your money.
Claude Code is 150k lines of Javascript that doesn't work particularly well. 150k isn't nearly "one of the biggest", even when filtering for actively maintained.
Why is porting a program from one language to another seen as some great achievement? We had f2c in the 1990s.
https://en.wikipedia.org/wiki/F2c
2 replies →
This is akin to saying "we replaced the tires on the car and the average user didn't notice". If the entire car was replaced, then maybe we get a bit more excited.
However if "replacing small sections of code" is heralded as "the most amazing achievement in software development" then we've all lost the plot a little bit somewhere.
It makes sense both ways, no?
The reality is, of course, most people aren't going to notice. If the functionality and performance is 1:1 why would they? Is it impressive? A bit, but not how you're positioning it. People seem to forget LLMs are good at what they've learned from training data. And the LLM is good at compressing time. The only notable thing about these types of marketing spins is that a rewrite was accomplished in a small time frame that was hard to pull off before LLMs. The actual act of the move is less so.
Did the codebase improve? Is it more performant? I've seen nothing to really stake those claims with any objectiveness. Lastly: what was gained?
I'll bite.
Claude code interacts with many system processes, files, etc, as well as external APIs. Processes audio via built in dictation. Manages a bunch of nasty auth. Etc etc.
What are the categories of features that wouldn't be exercised by this class of software?
Yeah, but a lot of hard work is done by those libraries. Interaction with external interfaces would go through the tools API, which I imagine would all use the same type of code that they could focus on fixing quickly.
This is probably a stupid question - as I’m totally unfamiliar with how interpreters call into system APIs - but would those calls use the bun runtime or the JavaScript Core engine the bun runtime wraps?
Claude Code is a large codebase and uses tons of Node’s features either directly or indirectly through dependencies. fetch(), node:http, node:tls, node:os, node:net, node:fs, AbortSignal, node:child_process, node:tty, node:process, node:http2, etc.
A bigger factor is that Claude Code is owned by Anthropic. They can view issues in the combined CC+Bun as issues in one overall thing that they own. They can reproduce and test them and "Claude Code works" can be used as a target for agentic iteration on Bun.
To release this to the world and not have it be a catastrophe, they need to have confidence that Bun itself satisfies the promises that it has made, both explicitly and implicitly (bearing in mind Hyrum's law!) to all those projects out there using it, none of which are owned by Anthropic and many of which are not source visible to them. It's a much, much higher bar.
You didn't seriously expect Anthropic to seriously maintain bun as a general purpose plattform? It's clearly the Claude Code Runtime that you're graciously allowed to continue to use for your toy projects.
If that is true, isn't it a bit unconventional? What version are they using, some random Git SHA? Why couldn't that have been made to a release or a release candidate at least?