this post was submitted on 16 Oct 2026
625 points (95.8% liked)
Linux
68249 readers
306 users here now
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
founded 7 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Except that a compiler is not a stochastic machine.
You could set temperature to zero and it'd work less.
As with path-tracing, physics simulations, and even sorting algorithms, sometimes an element of randomness is demonstrably more useful than rigid if-then branching. Sometimes it just avoids hard-to-judge decisions between marginally different choices. Sometimes it converges toward a simply correct answer. Sometimes it's chaotic - and many outcomes are equally valid.
https://www.tabulamag.com/p/non-determinism-is-not-the-problem
A JIT compiler is not a usual compiler (also definitely does not apply to C or system programming).
Conveniently ignoring the rest of the text. People don't know what a c compiler will generate either, a minimal code change can trigger a different optimization, generating completely different output.
Oh my god. No.
That's not what this argument is about. The JIT is non-deterministic based on the hot path yes. But the way that code gets turned into code IS.
The compilation of instructions is deterministic. The control flow and WHEN it gets compiled may not be, and it may smartly choose not to compile certain things based on that hot path but that's not the same.
A compiler and interpreter is a SYSTEM. a LLM is not.
Ok, how the fuck is that relevant to the argument?? LLMs write code, then deterministically it gets compiled, type checked, linted, etc. At that point you absolutely have deterministic code that is as valid as can be verified. EXACTLY like if a human wrote it. Unless you're suggesting that programmers never made mistakes that don't show up in tests....
The "problem" is that any standard compliant code uniquely defines the output for any given input. A bug-free compiler translates that execution path into the exact same behaviour, just in a different formulation.
An LLM translates a more or less vague natural language description of an execution path into a precise one formulated in code.
The difference is pretty fundamental: In one case you give an exact description of the inputs and outputs, and let a compiler translate that to a different but logically equivalent description. In the other you give a non-exact description and let a stochastic machine translate that into one of many possible exact descriptions.
That doesn't mean it's impossible to produce good code with an LLM. It means you need to inspect the output from the LLM with far more scrutiny than you would ever inspect the assembly output from a compiler.