Recent submissions

Comment · 10 days ago
You have completely misunderstood the author's point - a misunderstanding that would have been easily avoided by reading just a little bit more of the 23 pages of detailed exposition which is very clearly not the outcome of a 'lack of effort'
Comment · 10 days ago
> Stopped reading right after that. > Why is this so high up on HN?

Your question would have been answered if you'd just read a little more

Comment · 15 days ago
The data race is exactly the kind of subtle bug that even very experienced programmers would make in this circumstance.

The patches that Linus posted are relatively small and self contained and from reading the thread it seems came from a series of in depth conversations with Claude and were carefully reviewed by Linus.

So what we're seeing here is a tricky concurrency bug that even an expert would make. You can't use it as an example of slop

Comment · 15 days ago
Looks like Linus doesn't agree with you
Comment · 19 days ago
> rust will drop the string l before q

Why?

Comment · 21 days ago
what quirks did you bump into with sqlite3?
Comment · 24 days ago
It's not asserting corruption. they were the voluntary caretakers of a system designed to ensure their prosperity and they provided their time and energy so that the system would continue to do so.
Comment · 27 days ago
How much work is involved with mantaining a linker in deep maintenance mode?
Comment · 1 month ago
The tapestry is not considered French
Comment · 1 month ago
It's long been clear that there were fundamental implementation choices that mattered between async runtimes, but _nine_ design dimensions? Damn.

I think async is deceptive in that it seems like a self-contained and relatively straightforward aspect of a language. But there are many design choices to be made and they all have wide implications.

Plus I think the implications of many of these dimensions are not fully understood and that collectively we are still trying to understand how they are playing out in implementations. Add to this the subtle nature of some of the implications plus the combinations...

I think a good comparison is lexical vs dynamic scope in programming languages. This is a design dimension that was argued over for a decade or two in the early years of programming language design. It was only as time went by, and experience gained by working with concrete implementations that it became clear that lexical scoping should be the default choice and dynamic scoping should be restricted to various niches.

Comment · 1 month ago
No. Because concurrency vs parallelism
Comment · 1 month ago
> What is "await" if not a synonym for "suspend"?!?

it's a question of whether the runtime is guaranteed to suspend at an await point or if it may choose not to

> async/await is one product of a long line of thought that says "threads are too hard for programmers to get right".

what? no! concurrency vs parallelism etc etc

Comment · 1 month ago
At last someone took the time to pore over all the tedious crap that I have been trying and failing to keep straight in my head since forever.
Comment · 1 month ago
Please no. Africa has suffered enough.
Comment · 1 month ago
This migration predates the arrival of Celtic speakers by many thousands of years.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton