News for hackers. Stuff that matters.

aystatic

Not if you use a decentralized peer-to-peer Git forge like https://radicle.network. If one node goes down, users can still access the same issues/PRs from another endpoint.
That's a hell of a lot more than "basic extrapolation." You're misrepresenting the original claim to fight against one that's trivially easy to dispute. "Bun has had an extremely high amount of crashes/memory bugs due to them using Zig" (which unlike Rust, doesn't prevent you from writing them) is a completely different statement than your "using Zig results in an extremely high amount of crashes/bugs." Implying that such a generalization was even on the table is insulting.

Yes, obviously you can write high-quality software in Zig. But does Zig categorically reject the kind of bugs Bun was suffering from? Rust does.

> Is your claim that using Zig ends in an "extremely high amount of crashes/memory bugs?" Wouldn't that mean that it isn't even feasible to make high-quality software with such a tool?

What caused you to hallucinate such a broad blanket statement? The point is the memory unsafety issues they ran into would be categorically impossible in safe Rust, which is why they're doing this in the first place.

i don't think it's that "wild". sure, i'm not so cynical as to feel hn's become a nazi bar or anything, but i am willing to recognize that some of the incidents i've witnessed could be reason enough for a trans person to want to avoid this site.

> It's neutral to this topic, it's about tech.

this thread began by xe bringing up failures in moderation affecting trans people

you're free to have your own opinion based on your experiences here, but i wouldn't blame anyone for feeling that way. for the record, i don't think dang or anybody is a transphobe, but i have to imagine the culture here is pretty off-putting to trans people

https://news.ycombinator.com/item?id=36231993

you are literally on hackernews
Re:Same-day upstream Linux support for Snapdragon 8 Elite Gen 5 on Tuesday December 09, 2025 @04:57PM (#46211303)
don't see why they would care to put out docs on it considering macos doesn't even permit kexts anymore, there'd be no gpu drivers anyways. i figured it was obvious we're talking in the context of running linux on these things, given the parent topic.

> There's also an Apple VP saying unified memory on AS doesn't leave room for DGPUs and separate VRAM

can you link to this? my intuition is that they're speaking on whether apple would include dgpus inside AS systems like they used to with nvidia and amd chips in macbooks, which i agree wouldn't make much sense atp

Re:AMD GPU Debugger on Monday December 08, 2025 @07:40PM (#46199841)
name 3 things using tinygrad that's not openpilot
> You cannot even use Nvidia/AMD/Intel DGPUs with AS Macs

afaik you technically can, except that m1/m2 force pcie bars to be mapped as device memory (forbids unaligned r/w), so most gpu software (and drivers) that just issue memcpys to vram and expect the fabric to behave sanely will sigbus. it's possible to work around this, and some people indeed have with amdgpu, but it'd absolutely destroy performance to fix in the general case

so it doesn't really have anything to do with apple themselves blocking it but rather a niche implementation detail of the AS platform that's essentially an erratum

Re:A million ways to die from a data race in Go on Tuesday November 25, 2025 @01:38PM (#46049101)
I understand what you meant (but note that allocating an Rc isn’t necessary; &RefCell would work just fine). I just didn’t see the “subtle linguistic distinctions” - and still don’t… maybe you could point them out for me?

https://doc.rust-lang.org/stable/std/cell/struct.RefCell.htm...

https://doc.rust-lang.org/stable/std/cell/struct.RefCell.htm...

Re:A million ways to die from a data race in Go on Tuesday November 25, 2025 @11:21AM (#46047348)
> Runtime borrow checking: RefCell<T> and Rc<T>. Can give other examples, but admittedly they need `unsafe` blocks.

Where are the “subtle linguistic distinctions”? These types do two completely different things. And neither are even capable of being used in a concurrent context due to `!Sync` (and `!Send` for Rc and refguards)

Re:There is no memory safety without thread safety on Friday July 25, 2025 @03:21PM (#44687244)
imo if you're sprinkling around `unsafe` in your codebase "liberally", you're holding it wrong. In general it's really not that hard to encapsulate most unsafety into a wide-contract abstraction; I’d argue where Rust really shines is when you take advantage of the type system and static analyzer to automatically uphold invariants for you
Glancing at the Cargo.toml, the package doesn't define any features anyways. `cargo b --no-default-features` only applies to the packages you're building, not their dependencies -- that would lead to very unpredictable behavior
Neat, looks like a combination of erdtree[0] and broot[1]. I use both on a daily basis, are there any features that stand out from the two?

[0]: https://github.com/solidiquis/erdtree [1]: https://github.com/Canop/broot

Re:(On | No) Syntactic Support for Error Handling on Tuesday June 03, 2025 @02:28PM (#44173082)
You've managed to miss the entire point of using a union: the value is either a success payload or an error value, never both.

You can't encode that mutual exclusivity if you return a std::pair or std::tuple. That's exactly why std::expected, std::variant, or Rust enums exist, to make that constraint explicit in the type system.

Re:(On | No) Syntactic Support for Error Handling on Tuesday June 03, 2025 @01:01PM (#44172151)
I don't know that there's whining about "having to handle errors" in principle, it's pretty clearly a complaint with the syntax and semantics of doing so

Some languages even make omitting error handling impossible! (e.g. Result sum types). None have anywhere near the amount of "whining" Go seems to attract

Codex-like agents are cool but as someone with even just a passing interest in compilers I absolutely hate this attempt at appropriating the word "codegen"
Re:Migrating Away from Rust on Monday April 28, 2025 @09:50PM (#43827997)
?? the whole point of Box<T> is to be an owning reference, you can’t have multiple children refer to the same parent object if you use a Box
Re:Go's Error Handling Is Perfect on Friday April 05, 2024 @11:44AM (#39943815)
I don't necessarily disagree with the overall point, but I'm sad the article misses the big advantage to the sum-type solution. It is not just about "being able to collapse `res, err := func()` into `res := func()?`". With sum types you literally cannot access the Result's inner value without performing some kind of error handling. Even if you just `.unwrap()`.

from https://fasterthanli.me/articles/i-want-off-mr-golangs-wild-...

> The point is, this function signature makes it impossible for us to access an invalid/uninitialized/null Metadata. With a Go function, if you ignore the returned error, you still get the result - most probably a null pointer.

Re:DeskHop – Fast Desktop Switching on Wednesday December 27, 2023 @10:00AM (#38782572)
This announcement was only added to the README in early October[1]. In the meantime you can of course compile it yourself/grab a build from GH actions. I'm sure they would appreciate the testing, especially leading up to release :-)

[1]: https://github.com/input-leap/input-leap/commit/78ca8f1ef7b6...