Earlier quoted context omitted.
Porting TypeScript to Go in 7.0 doesn’t seem like bad engineering. Neither does this port, given that that Bun started out in a somewhat buggy state.
Completely different approaches. The TypeScript Go port was done responsibly, reviewing every line ported, publishing both runtimes in parallel to give it time for real-life battle testing, with plenty of communication to the community about what was happening. The Bun Rust port was irresponsible and unprofessional, merging a million lines of unreviewed code while gaslighting the community, relentlessly casting shade…
Zig Creator Calls Spade a Spade, Anthropic Blows Smoke
521–530 of 862 posts
Re: Zig Creator Calls Spade a Spade, Anthropic Blows Smoke
#522Earlier quoted context omitted.
>When I read the post, my first thought was that I wouldn’t want to build things in Zig, because any technical decision I make, good or bad, might subject me to this kind of article from their BDFL. I think it is worse than that, the comments from people in threads about this suggest that this is an attitude that is creeping into the community. They may not be a majority, but if kinder souls decide to leave for a mor…
There seems to be a team sport mentality with AI topic in HN these days. Almost feels like people are picking sides, and thus not being very thoughtful or rational. Sigh, there definitely an attitude creeping into the community and it's a huge turn off unfortunately.
Possibly the thing that will determine the long term survivability of each will be the respective attitudes of dang compared to Andrew. Putting out flare ups may be a fairly thankless and unending job but it probably is more protective than pouring gasolene over them.
Maybe one day dang will pop and it will all come out in a spectacular rage.
Re: Zig Creator Calls Spade a Spade, Anthropic Blows Smoke
#523Re: Zig Creator Calls Spade a Spade, Anthropic Blows Smoke
#524Earlier quoted context omitted.
No one involved in the port proposed "blindly porting Zig code 1:1 and calling it a day". From the first blog post the creator said: > We can gradually refactor it to reduce unsafe usage and look more like idiomatic Rust after Bun v1.4 ships. What the rewrite does is make the unsafe code greppable, which is a necessary first step to eliminating it and one that's actually achievable rather than going straight to idiom…
> We can gradually refactor it Is quite a hell of a statement, when memory management issues are highly nonlocal and need some careful design upfront in order for you to nail it. Unsafe isn't something that you can gradually clean up. Even one single flawed usage of unsafe (an ill-assumed invariant) can poison the whole program in scary ways, and might require a total refactor of your codebase to fix it.
The difference is that in Rust you get strong guarantees for everything that is not inside of unsafe and clearly demarcated areas where things might go wrong. Even if you never eliminate a single unsafe block, the clear demarcation is valuable as an artifact in its own right.
Re: Zig Creator Calls Spade a Spade, Anthropic Blows Smoke
#525Earlier quoted context omitted.
I program C for my day-job. I see Rust encroaching in proposed transitions. It may even happen. That said, it is a poor match for it compared to something like Zig (or Odin). It's hard to make the new Rust code use existing allocator abstractions (so now you have two systems doling out memory, how do you reliably free composite objects with memory from both? How do they share?) and you increasingly have to either aba…
If you allow, I’m curious: If you felt familiar with the language just as much as with C/Zig/Odin, would you prefer Rust for a completely greenfield project that requires no C interop (or none more detailed than say providing a general ABI)?
Re: Zig Creator Calls Spade a Spade, Anthropic Blows Smoke
#526Earlier quoted context omitted.
All I’ve seen is there is literally no programmer smart and careful enough to never create a use after free or out of bounds read in a sufficiently complex codebase. The state of computer security has moved on from the old model of just patching bugs when you find them. To now where we need to systematically prevent them from happening to begin with.
Have you heard of TigerBeetle? Being smart enough doesn't seem to be the primary factor. It's about having a strategy and the discipline to follow it. No type system will ever free you from the burden of doing the actual engineering.
At the same time, TigerBeetle can do this because it’s solving a specific shape of problem that’s amenable to that allocation strategy. Binding a third-party runtime written in C++ (TMU, this is what Bun is) is a pretty differently shaped problem that doesn’t easily admit that style.
In other words, discipline isn’t always enough (although you do certainly need it). Sometimes the shape of the problem makes environmental constraints (like the kind Rust offers) important.
Re: Zig Creator Calls Spade a Spade, Anthropic Blows Smoke
#527Earlier quoted context omitted.
> since AI makes rewrites to certain languages relatively easy This premise makes no sense. AI makes rewrites to any language easy.
That's absolutely not true. Differently languages have greater or lesser representation in the training sets. You see a similar bias toward specific libraries within a given ecosystem, so much so that I worry about AI created technical monocultures as AI generated code converges to specific languages, packages, etc. The LLM companies have truly astounding power to now steer the direction of the entire industry. It sh…
Re: Zig Creator Calls Spade a Spade, Anthropic Blows Smoke
#528Earlier quoted context omitted.
I don't have a strong stance on the overall issue of whether it made sense for them to port like this, but I feel like this misunderstands the value proposition of Rust. The point of Rust is not and has never been "make literally everything safe", it's "push the unsafe boundary as low as possible and keep as much as possible above it so that you can reduce the surface area for unsafety and more easily find bugs in th…
> Rust is not and has never been "make literally everything safe", it's "push the unsafe boundary as low as possible and keep as much as possible above it so that you can reduce the surface area for unsafety and more easily find bugs in the unsafe code". Another definition: Rust is a lang to "Run fast and low-level software/firmware, with nicer tools, features, and syntax than the other langs which can do this"! Obvi…
Re: Zig Creator Calls Spade a Spade, Anthropic Blows Smoke
#529so weird people are not commenting on this.
it's like.. I dunno, rewrite linux in rust, because bun uses glibc, this will somehow make it better, so claude code somehow can run better?
hell, start with UEFI.
Re: Zig Creator Calls Spade a Spade, Anthropic Blows Smoke
#530Earlier quoted context omitted.
> Rust may have a tremendous success in the future, because it's much easier to write it with AI (ignoring for a moment whether that's really a good thing). It’s interesting that Rust could become the most deployed but the least written (by humans) programming language if the dreams of AI bros come true. If AI gets good enough to competently translate other languages to Rust then there is no point writing in Rust (a…
C/C++ is low friction compared to Rust? Wow. We have very different experiences.
Rust is like the instructor demanding that you build your house up to the national code, down to the choice of nail for your floor board. Your house will be perfect, but building it is extremely difficult and high-friction. In many cases this is unnecessary.