Submission timeline
2007–2026One slot for every year since HN launched. Height is that year's peak points; orange marks a 100+ point or 50+ comment breakout. Select a bar to open its strongest thread.
Top comments
A very interesting trick! In my opinion, the big takeaway here is that if you are willing to write your C code in tail call style, you can get a lot of control over which variables are stored in machine registers. In the x86-64 ABI, the first 6 function parameters are guaranteed to be passed via registers. Obviously, this is architecture-specific. Other architectures may use a different calling convention that ruins this kind of manual register allocation. I'd imagine that…
A C standard proposal exists for tail call [0], in the form of "return goto (expression);". What I like about it, over standardizing [[musttail]], is that lifetimes of local objects are guaranteed to end. This makes it possible to implement without extensive escape analysis. [0] https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3266.htm#5...
The first top-level comment from each of the four biggest threads, in HN’s own order. Excerpts are shortened; open a comment for full context.
HN stats
- Breakout years
- 2
- Total points
- 966
- Total comments
- 350
100+ points or 50+ comments
reference only — not used in Hall rules or ranking
reference only — not used in Hall rules or ranking
Every submission
| Date | Title as submitted | By | Points | Comments |
|---|---|---|---|---|
| 2021-04-21 | Parsing Protobuf at 2+GB/S: How I Learned to Love Tail Calls in C | haberman | 6 | 0 |
| 2021-04-22 | Parsing Protobuf at 2+GB/S: How I Learned to Love Tail Calls in C | adrianN | 4 | 0 |
| 2021-04-25 | Parsing Protobuf at 2+GB/S: How I Learned to Love Tail Calls in CFirst breakout · Best thread | signa11 | 586 | 190 |
| 2022-12-06 | Parsing Protobuf at 2+GB/S: How I Learned to Love Tail Calls in C (2021) | colinprince | 1 | 0 |
| 2023-08-19 | Parsing Protobuf at 2+GB/s (2021) | tentacleuno | 3 | 0 |
| 2024-08-19 | Parsing protobuf at 2+GB/s: how I learned to love tail calls in C (2021)Hall induction · Latest 20+ point return | fanf2 | 366 | 160 |
