This seems like an impressive improvement, and I'm looking forward to it eventually being upstreamed. Though unfortunately I'm on Nvidia right now, and have been struggling with vram. They don't seem to support any kind of paging at all.
I am curious about the bit on virtual memory fragmentation. Would it make sense for the kernel to occasionally defragment that memory in place? I assume that would create a noticeable hitch, but might improve performance otherwise and allow for some applications to just fit in.
I'm not sure how much insight we can glean from looking at the number of commits and release cadence here. In the aftermath of such a major refactor/rewrite, I would expect it to take some time to get back up to their usual development speed.
Jared and the other developers are new to the Rust codebase, even if the structure is largely familiar. They're also likely focusing on other priorities right now such as tracking down instances of 'unsafe', rather than making user-facing changes (which might encourage a release).
Bugfixes could encourage rapid new releases, but perhaps the rewrite simply hasn't been very buggy? As far as I know, those on the canary channel haven't reported any major issues, or even really noticed the change. So perhaps there's little reason for new releases right now, as the team slowly churns through the backlog.
> P.S. Anthropic’s C compiler and Cursor’s FastRender web browser haven’t had any commits for months.
I always assumed those were just experiments in capability, and weren't meant to be ongoing projects. I would hope that nobody is using them directly today.
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.
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 don't see the multiple dramatic comments to the effect of "this whole thing was a failure" as a level skepticism. While I am sure that one exists, I've noticed another wave of Rust hate hopping on that event which is honestly just sad to watch at this point.
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).
LLMs are very impressive. Five years ago, the idea that we'd have software that you could ask - in English, mind you! - to rewrite an entire server side JS runtime and you'd get something which even kind of worked was squarely in the realm of science fiction. But the question isn't "is this impressive?", but rather "should the results of such a rewrite be relied upon?" (and specific to this thread, "is the fact that a use case which only touches a small subset of the features of said result appears to no be completely broken good evidence it should be?")
If you could successfully write Tetris in Malbolge, I would call that impressive indeed. Just writing Hello World was a major effort IIRC. The nature of the malbolge interpreter makes it more of a cryptography exercise than a coding one.
I'm gonna jump in here with some self promo - back in college I TA'd a class that, for a few weeks, taught Malbolge, and the only assignment was for students to write a program that printed their name.
After spending a lot of time thinking about the language, I came up with a relatively simple algorithm based on the language design - there are a few operators that mutate state, so basically just try combinations of those until your next memory cell contains the thing that you want, then lock those instructions in and advance.
BUT! The whole reason for this comment is to nerd say that printing stuff is relatively easy if you invest the time in learning the language's primitives and think of programming in it more as algorithms to operate on the op codes instead of literally writing code.
Now, to do more interesting things other than printing - I'd have to spend even more time thinking about the language, which I don't want to
Pretty funny that I off-handedly used Malbolge as a random pull from my brain for “an extremely weird and not-really-but-kinda programming language” without even really remembering any details about it; and then I got to learn about your project!
A human doing it is impressive. A human performing many computations a computer could do would be impressive. I don't get impressed when a computer computes a number. A language machine translating is just... doing what a language machine does? When a language machine starts doing something other than translation, I will be impressed. If computers starting singing without any human intervention, for example, would be incredible! C3PO knows many languages—he may know Rust and Zig. C3PO translating from Zig to Rust isn't surprising to me. Sounds par the course for a robot who knows languages.
>A language machine translating is just... doing what a language machine does?
Really? We had language machines for decades that couldn't do it. One that could was only built in the last 2 years max but that's something you expect from language machines? Lol Okay
If a machine made to do language things in this day and age having trillions of dollars invested in doing language, I am not shocked at all that a trillion dollar language machine translates programming languages. It really is not surprising to me. I'd be surprised if a trillion dollar language machine doesn't do as fundamental a linguistic capability as translation. It's like being shocked that a language machine spews out language? What else does a language machine do?
A calculator that can find all primes will be cool. A language machine that translates english into JavaScript is cool. A language machine that translates Zig into Rust is cool. Language machines are cool, not awe-inspiring or surprising to me.
Millions. This is getting rather silly. You don't get to pull, "of course it can do this" for something that has only been possible in very recent memory. The original thread is full of people announcing this an a disaster in the making and suddenly it's no big deal? Lol
You are still wrong on the investment it takes to create the machines. The original thread is full of people announcing this an a disaster in the making and suddenly it's no big deal? Lol. You don't get to pull, "of course it can do this" for something that has only been possible in very recent memory.
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.
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?
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?
Author here: I'm also not sure how much we can glean from any of that!!! I look forward to Anthropic or Bun releasing a retrospective after their next release that fully outlines the cost.
Given their history with previous other marketing stunts I do not expect any retrospective. The technology is real but I have little faith in open and honest communication from Anthropic.
truth. We'll just have to wait and see what the frequency and severity of bug reports is going forward. I have my biases, but I'm not going to make any forecasts here. I'm content to let the evidence dribble in. However, I don't rely on Bun for any critical systems. i.e. I realize it's easy for me to have a wait and see attitude with this one.
The CI/CD costs are an interesting take, most of the rebuttals to AI ROI are something like “more code doesn’t mean more value!” but if you are charging per CI run then it actually does! Particularly with CI and extra testing being the main way to prevent the loops the AI companies are shilling from going off the rails
Note that this post includes a major spoiler for the show The Good Place. The show is fantastic, so I'd suggest not reading unless you've already finished season 1, or have decided it's not for you.
I only started watching it after I got spoiled, and didn’t mind it. Before I knew about the premise I thought the show looked boring. Didn’t pick it up based on the excerpt on Netflix.
The show doesn’t really rely on not knowing the twist. And even saying there’s a spoiler for season 1 will probably clue most people onto what the twist is
anyway
Oh okay, let me try to advise instead what you are suggesting:
Dont read anything about the corruption in this country, because it might not be entertaining as 10 year old TV show. You need a healthy entertainment diet of non-corruption content, so that you don’t feel the need to contribute to democracy.
Oh okay, there are multiple articles on the same thing, don’t read or inform yourself of anything because they might spoil an old TV show!
The article isn’t a light refresher on corruption, it literally has suggestions of how to change cryptocurrency investment for the better. It is frankly very indepth and lengthy and very good. But one wouldn’t know that if they skipped over it because of few lines might hurt their entertainment viewing-surprise ego.
I was unkind? I would call telling people to prioritize circuses over learning and livelihood pretty damn cruel. Even if they did it in a friendly way.
Well, I wasn't intending to violate any guidelines, and I don't believe I've dismissed the article besides. I was just trying to save some people from potential frustration, as there was no warning provided upfront.
edit: Ah, I see. You left this comment after having your last response flagged.
Yep, they solve the same problem. I built my blog on Harry Roberts' ITCSS paradigm some ten years ago, and found it extremely easy to migrate to cascade layers. They're an underutilized solution to addressing growing specificity.
They're admittedly less useful if you're already using component-based design. That's closer to something like BEM in hyper-targeting each element.
Personally, I forget syntax all the time. There's always a warm up period after I switch languages, and it takes me longer to be start writing good, idiomatic code.
Like sure, I can probably write some python, but will it be pythonic? I might still be Java-minded for a while, trying to OOP my way into solutions.
Earlier today I needed to write some PHP and couldn't remember if it used length, count, or size. I had to look it up. I've been doing this for 20 years.
Same, I can't pass any test that relies on getting syntax correct. If you want me to fizzbuzz on a whiteboard in a language I've been writing dozens or more of lines of per day for a year up to and including the day before, and require that I don't mess up the syntax, I reckon I've got a coin-flip chance of passing at best (meanwhile, sure, of course the actual logic of fizzbuzz isn't tricky for me)
I once got the method invocation syntax wrong for PHP in an interview. I'd written thousands of lines of PHP and had most-recently written some the week before.
This, despite starting off my programming journey in editors with no hinting or automatic correction. If anything, I've gotten even worse about remembering syntax as I've gotten better at the rest of the job, but I was never great at it.
I rely on surrounding code to remind me of syntax and the exact names of basic things constantly. On a blank screen without syntax hints and autocompletion, or a blank whiteboard, I'm guaranteed to look like a moron if you don't let me just write pseudocode.
Been paid to write code for about 25 years. This has never been any amount of a problem on the job but is sometimes a source of stress in interviews and has likely lost me an offer or two (most of the sources of stress in an interview have little to do with the job, really)
Right, so I wonder, have you noticed or found or experienced any better interview processes? I wonder how we can't just filter out companies that require us to do this sort of hand waving and party tricking behavior or like "because we can't figure out a better way to do this". I reckon maybe a simple filter statement before any interviews, to the recruiters "Hey I don't do xyzzy" would help - though working on the tuning of the language.
I've also started requiring minimum of $300/hr compensation for interviews of my time, newly, so far no success though I'm fine with dying on that bridge or requiring at least a new type of interview process.
Right, but on interviews I've been on it's never the goal to test _exact syntax knowledge_. It's not hard to distinguish between someone who just can't program vs. someone who has knowledge of many languages and has a bit of a mish-mash in their head in an interview setting.
There are people who just can't program for whatever reason, regardless of whether they could previously. And they constantly try to interview at a programming position.
Sure, and Microsoft acquired DOS, and Adobe acquired Photoshop. At a certain point though, after 20+ years of development, you need to give some credit to the new owners for making it into what it is today.
> Did vibe coding the business page inject it into ChatGPT's training data?
No, at least not directly. Inference does not train models. It is possible that OpenAI may separately collect the chat data, clean it, and feed it back into the model for future iterations. Or they could have extracted URLs for future indexing.
More likely though, I suspect, is your site just managed to be indexed naturally, and LLMs are very efficient at matching obscure data to relevant queries.
Interesting. Maybe someone could run bot farms that ask variants of the same question and subtly nudge the model by replying reasons why the model's recommended service A is inferior to service B. Or other forms of adversarial question answers sessions.
I am curious about the bit on virtual memory fragmentation. Would it make sense for the kernel to occasionally defragment that memory in place? I assume that would create a noticeable hitch, but might improve performance otherwise and allow for some applications to just fit in.