Hacker News new | ask | show | jobs
by petcat 86 days ago
Anthropic needs to spend some tokens rewriting Claude Code in Rust (yes, really).

The difference in feel between Codex and Claude Code is obvious.

The whole thing is vibed anyway, I'm sure they could get it done in a week or two for their quality standards.

4 comments

I'd suggest Go ahead of Rust. It's more accessible to contributors.
I think Go might be a better choice but not for that reason at all.

Go could implement something like this with no dependencies outside the standard library. It would make sense to take on a few, but a comparable Rust project would have at least several dozens.

Also, Go can deliver a single binary that works on every Linux distribution right out of the box. In Rust, its possible but you have to static compile with muslc and that is a far less well-trodden path with some significant differences to the glibc that most Rust libraries have been tested with.

Because of all these obvious Go benefits, wonder why they are instead always doing these tools in typescript? Must be some reason?
Because is all the current generation of devs know unfortunately.
Most developers find it more pleasant.
I don't get it either.
Most of, if not every commit of claude code is now written by claude code itself without any human writing code, only promoting.
Claude Code is closed source so this isn’t a concern they should have as Opus is great at Rust.
> It's more accessible to contributors.

What would make go more "accessible to contributors" than Rust?

My personal opinion is that I like Rust much more than Go, but I can’t deny that Rust is a big, and more dauntingly to newcomers, pretty unopinionated language compared to Go.

There are more syntax features, more and more complex semantics, and while rustc and clippy do a great job of explaining like 90% of errors, the remaining 10% suuuuuck.

There’s also some choices imposed by the build system (like cargo allowing multiple versions of the same dep in a workspace) and by the macro system (axum has some unintuitive extractor ordering needs that you won’t find unless you know to look for them), and those things and the hurdles they present become intuitive after a time but just while getting started? Oof

Go is a language one can learn and become functional in an afternoon. Rust is way more involved.
To vibe coders it doesn't matter, right?
Even then, you still need to read that code and Rust is way less read friendly than Go.
I have the impression that most vibe coders don't read code. I guess they would probably use something accessible to them, just in case.
If you already know some php python javascript and/or c, you can pretty much just wing with Claude code.
Frankly I don't think one even needs to learn it, if you know a bunch of other languages and the codebase is good. I was able to just make a useful change to an open source project by just doing it, without having written any lines of Go before. Granted the MR needed some revisions.

Rust is my favorite, though. There are values beyond ease of contribution. I can't replicate the experience with a Rust project anymore, but I suspect it would have been tougher.

Mature tui packages like bubbletea, lipgloss. Besides TS resemblance to go could push the movement of rewrite, not necessarily easier though.

CC isn't foss in the first place, so the previous comment falls short.

> TS resemblance to go

This is the second time I've seen claims like this in the last 24 hours and I'm afraid I might have lost contact with reality.

I think go will make it easier for more developers to contribute, bit rust would probably attract higher quality contributions.
If anything, the stricter the compiler the better for vibe coding the language
agents don't really care and they're doing anywhere between 90-100% of the work on CC. if anything, rust is better as it has more built-in verification out of the box.
This is a terrible suggestion.

Rust is accessible to everyone now that Claude Code and Opus can emit it at a high proficiency level.

Rust is designed so the error handling is ergonomic and fits into the flow of the language and the type system. Rust code will be lower defect rate by default.

Plus it's faster and doesn't have a GC.

You can use Rust now even if you don't know the language. It's the best way to start learning Rust.

The learning curve is not as bad as people say. It's really gentle.

Rust is the best AI language. Bar none.

already done, this is what I use now: https://github.com/leonardcser/agent
Java (incl. Scala, Closure, Groovy, Jython, etc.) is better suited to running as a server. Let agents write clean readable code and leave performance concerns to the JIT compiler. If you really want you can let agents rewrite components at runtime without losing context.

Erlang would offer similar benefits, because what we're doing with these things is more message passing than processing.

Rust is what I'd want agents writing for edge devices, things I don't want to have to monitor. Granted, our devices are edge devices to Anthropic, but they're more tightly coupled to their services.

There is literally no reason to write it in a JVM language in 2026 when better options exists. Either Go for simplicity and maintaininability or Rust to get the most out of the machine works.

Also, it'll be hard for them to lure good people to work on that thing. Absolutely no one is getting excited to write, vibe, or maintain Java.

I am not thrilled to use java, but it really does what it says on the tin. A customer copied the jar file I sent them to their as400 and it just worked. There is nothing quite like it.
Go binary says hello. No VM overhead. Everything is statically linked.
Hi go binary, unfortunately you don't exist, because there is no cross compiler for that platform. Also please don't crash if you ever do get cross compiled, since the target system doesn't understand your utf8 strings.
Claude Code is a Rust app now.
It still has bun inside with minified JavaScript.