Michael Haufe (@mlhaufe) header
Michael Haufe (@mlhaufe) profile picture

Programming Language Theorist Systems Architect/Engineer USMC war veteran https://teapaw.org/t.co/s25CQwWEUg

Earth
Joined January 2010
Photo by Michael Haufe (@mlhaufe)Photo by Michael Haufe (@mlhaufe)Photo by Michael Haufe (@mlhaufe)Photo by Michael Haufe (@mlhaufe)Photo by Michael Haufe (@mlhaufe)Photo by Michael Haufe (@mlhaufe)Photo by Michael Haufe (@mlhaufe)Photo by Michael Haufe (@mlhaufe)Photo by Michael Haufe (@mlhaufe)Photo by Michael Haufe (@mlhaufe)
"The secret to enjoying your job is to have a hobby that's even worse" #PLT en.wikipedia.org/wiki/Progra…
1
18
Permissively licensed open source Verse compiler, runtime, and draft specification are coming, possibly as soon as 2025.
2
10
1
75
7,462
Michael Haufe retweeted
Replying to @joaompfe
This isn't true in theory. At least, not in general. In many cases, the context to understand or specify something is built from all the relations it has with other things. A program can just write 42. A specification may describe an entire system to explain why 42, not 43.
3
2
7
149
Michael Haufe retweeted
Asking my AI teacher how to spell seventeen
3,012
13,016
4,434
208,665
28,752,549
Michael Haufe retweeted
Replying to @unclebobmartin
Architecture. The set of significant design decisions that shape the form and function of a system. What Bob calls “the high level gestalt of the system” is what I call its architecture. And for a software-intensive system, architecture has always been far more important than any details of its implementation.
16
37
4
290
11,295
Michael Haufe retweeted
A huge amount of the Anti-AI code sentiment massively overestimates the quality of human code outside of a very small set of open source and high quality company codebases. Human Slop is everywhere and can trivially be improved on by any opus level model.
475
893
299
11,423
1,043,486
I used to be a Haskell acolyte. I studied monads, GADTs, type families, and category theory. I knew the language cold, inside and out. I could make the type checker prove things nobody had asked it to prove. I shipped code using it. Rarely. I have attacked other languages with a similar intensity and depth. I tried OCaml. I tried Rust. Until recently, I even entertained the possibility that pragmatism had something to offer. Then I saw people writing Go and JavaScript. Happily calling it engineering. I now consider my former language fanaticism dangerously moderate. I don't want my agents to write arbitrary code in any of the thousands of languages out there. I want them to prove invariants, eliminate impossible states, and justify every function that isn’t total. I willl leave pragmatism to soys. What I need now is to understand every cog in the system. I want to see the types and the invariants. I need to inspect the cogs. I need to know whether the cogs compose. If I find an "any", I will interrogate my agents. I am not going to pretend to be a reasonable language enthusiast anymore. I have become a Haskell extremist. Haskellu Akbar.
22
41
5
469
13,635
Michael Haufe retweeted
FFS, not this shit again. I don't review bytecode and assembler because a) the generation is deterministic b) there are much smarter people who do that and I trust that they know what they are doing.
I don't see the point to review AI generated code anymore. AI agents are the new compiler. We don't review bytecode. We just trust the output of the compiler. I don't think we should treat AI output differently. However, the authoring layer cannot be markdown. I feel like there's a paradigm just around the corner that we have missed so far. Maybe a new "language", which won't look like a programming language at all.
18
24
2
646
13,579
Michael Haufe retweeted
Lines of code is never a particularly meaningful measure for anything.
Most think vibecoding at scale is slop. Here’s a counterexample. Today we release a 16M-line formalization of the entire Stacks Project, critical infra underlying modern math, with optimized code quality and its highly interconnected structure preserved. A mathematical city 🌆
19
38
2
500
12,551
In Fahrenheit 451, the chief book-burner, Captain Beatty, describes how reading became obsolete because the public demanded increasingly fast-paced entertainments, and those entertainments slowly corroded their ability to think. “Books cut shorter. Condensations. Digests, tabloids. Everything boils down to the gag, the snap ending. Classics cut to fit fifteen-minute radio shows, then cut again to fill a two-minute book column … Many were those whose sole knowledge of Hamlet was a one-page digest in a book that claimed, ‘Now at last you can read all the classics.’ … School is shortened, discipline relaxed, philosophies, histories, languages dropped, English and spelling gradually neglected, finally almost completely ignored. Life is immediate, the job counts, pleasure lies all about after work. Why learn anything save pressing buttons, pulling switches?” In this passage Ray Bradbury foretells the intellectual hollowing out of the working class, the advent of AI-generated “summaries” of classic novels, the attention-frying culture of short-form video, the relaxation of educational standards into non-existence. All of this in a book published in 1953.
Starting to really understand why a core theme of dystopian novels is that nobody reads
198
6,672
161
28,574
450,631
Michael Haufe retweeted
tolkien, on the mathematical community...
J.R.R. Tolkien, Letter 154:
2
13
93
2,610
Michael Haufe retweeted
A programming language requires local reasoning and a stable semantics, a clear cause and effect between code and behaviour. Even fully deterministic LLM tooling enables a stray word in an unrelated comment to influence outcomes. That makes them terrible compilers.
1
1
2
59
Michael Haufe retweeted
AI is creating fabrications in scientific papers A random sample of 500,000 peer-reviewed journal papers found that fabricated references rose from 6.3 per 10,000 in 2023 to 23.0 per 10,000 in the first quarter of 2026 (with no signs of abating). This is going to create a challenge for journals to catch these errors and hold authors accountable when they submit work with serious flaws. pnas.org/doi/10.1073/pnas.26…
27
87
11
244
19,344
Michael Haufe retweeted
Replying to @LH @geazi_anc @ZedLang
JavaScript. Lisp. Forth. Smalltalk. Languages aren't inherently hard. It's improving state of the art enough that a transition is worthy that is hard. Obvious, low-hanging fruit was plucked long ago. What remains is either non-obvious (without hindsight) or awkward to reach.
2
1
2
100
Leibniz presented his solution to the problem of evil through dancing statues, Prometheus choosing humanity’s fate, and an infinite pyramid of possible worlds. A previously overlooked manuscript adds a fascinating chapter to the story. leibnizpapers.org/prometheus…
27
1
170
4,581
Michael Haufe retweeted
Asked one of our developers how he uses his AI agents and he just sent me this:
179
1,336
263
16,199
1,758,015
Michael Haufe retweeted
Replying to @JustDeezGuy
though we can't overlook that without Smalltalk you likely don't get a successful Apple and you would have had VBScript instead of JavaScript in the browser. Would we have gotten MVC far later?
2
1
4
92
Michael Haufe retweeted
Instead of using a battle-tested open-source lib that you have to maintain, you vibe-code your own version, which you also have to maintain. Brilliant plan.
Open source libraries are a dying idea. Increasingly, using an external library that must be upgraded constantly to patch vulnerabilities is more expensive than generating your own version of the small part of it you use.
4
32
1,014