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.
First comments on top threads
HN comment orderThis article makes some valid points but is overall rather misleading I think. Almost all of the reasons given why C is "not a low-level language" also apply to x86/x64 assembly. Register renaming, cache hierarchies, out of order and speculative execution etc are not visible at the assembly / machine code level either on Intel or other mainstream CPU architectures like ARM or Power PC. If C is not a low level language then a low level language does not…
Intel and HP attempted to deliver what this paper advocates. They designed an entirely new processing element and compiler architecture that promised to deliver high performance with less complexity. It was called EPIC and manifested as Itanium. Billions of dollars and the best minds at the disposal of an industry wide consortium couldn't make it work; one year ago the last Itanium shipped. The market has spoken. You can run unmodified, compiled OS/360 code from the 1960s on a z15…
C is low level for at least one reason: manual memory management. Especially with modern hardware, memory management is at the center of programming. For example, Rust prides itself in being memory safe without a garbage collector, memory management is more or less the entire reason for Rust to exist. Why is C fast? Memory. Why is C unsafe? Mostly memory. One of the big reason parallel computing is hard? Concurrent memory access. Functional programming is often surrounded by plenty…
The Cell processor was a very different architecture from x86. It sacrificed cache coherency and required the programmer to manually manage each core's cache, in exchange for state-of-the-art performance. This was all done in C (although FORTRAN compiler was also available, of course). The Cell processor simply introduced new intrinsic functions to the C compiler, to allow the programmer to access the new hardware functionality. It all works perfectly fine with the rest of C, although people felt it was…
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.
- Breakout years
- 4
- Total points
- 1337
- Total comments
- 1087
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 |
|---|---|---|---|---|
| 2018-05-01 | C Is Not a Low-Level LanguageFirst breakout · Best thread | jodooshi | 472 | 316 |
| 2019-12-27 | C Is Not a Low-level Language (2018) | pcr910303 | 343 | 167 |
| 2021-12-27 | C Is Not a Low-level Language (2018) | pcr910303 | 204 | 192 |
| 2023-10-16 | C Is Not a Low-level Language – Your computer is not a fast PDP-11Latest 20+ point return | bmer | 293 | 396 |
| 2025-02-13 | C Is Not a Low-Level Language (2018)Hall induction | krykp | 2 | 1 |
| 2025-04-13 | C Is Not a Low-Level Language (2018) | qianli_cs | 6 | 0 |
| 2025-04-16 | C Is Not a Low-Level Language (2018) | daviducolo | 2 | 1 |
| 2025-05-13 | C is not a low-level language (2018) | pdubroy | 15 | 14 |