From a previous preprint titled "Claude’s Cycle", dated 2026-02-28 [2]:
It seems that I’ll have to revise my opinions about “generative AI” one of these days. What a joy it is to learn not only that my conjecture has a nice solution but also to celebrate this dramatic advance in automatic deduction and creative problem solving. I’ll try to tell the story briefly in this note.
And he closes [2] with “May the force be with you”
Very interesting that he seems to be in the camp of “It’s ok if the machines prove it as long as we can understand and formally verify it after.”
TheChaplain 2 days ago [-]
I am not a believer, but pray that whichever $DEITY is watching over Donald Knuth allows him a healthy and long life to reach the achievement of finishing volume 7.
mcv 2 days ago [-]
He's a Christian (he's also written about that), but considering the time volume 4 took (and is still taking), I have my doubts he's going to make it.
kps 2 days ago [-]
I think there's a proof that he can at best asymptotically approach volume 7.
wolfi1 2 days ago [-]
but what distraction could it be now? There seems to be nothing to be done for TeX
kps 2 days ago [-]
The way I see it: Volume 7 is compilation. Since many optimization techniques are NP-complete, Knuth will have to take a break from writing TAOCP to settle whether or not P=NP.
flir 2 days ago [-]
Three months, tops.
Pet_Ant 2 days ago [-]
What he needs to do is start sketching the rest so that it can be finished after his death in his vision.
myst 2 days ago [-]
There’s no second Don Knuth vOv
disgruntledphd2 2 days ago [-]
Brandon Sanderson maybe?
y1n0 2 days ago [-]
Damn funny comment.
murphyslaw 2 days ago [-]
If the end product is something like La Sagrada Familia, I'll pass.
jagged-chisel 2 days ago [-]
About $340 for the full set of eBooks.
Also: "Please do not tell me about errors that you find in an eBook, whether it's PDF or not, unless the same errors are present in a printed copy; such mistakes should be reported directly to the publisher."
Glad he thought to mention this, but I suspect his inbox will still be inundated.
E-mails which are sent in about the various books used to be printed out and responded to --- I got a $2.88 physical reward check for finding an error and a point of improvement in _Digital Typography_. Not sure how they are handled now. Trying to find an error or point of improvement in v4f7 so that I can get an account at:
(usually, I do find errors in books, esp. e-books, which reminds me, I need to pick up the corrected 3rd printing of _The Fall of Arthur_ by J.R.R. Tolkien before I read it again, since that should have the error I found corrected).
fmajid 2 days ago [-]
Yes, that article has an email for TAOCP corrections, that are processed by his secretary.
jagged-chisel 2 days ago [-]
Inboxes don’t have to be digital. Inboxes, digital or physical, can be handled by other people.
In any case, someone beyond the publisher will still get inundated with corrections about the PDFs and likely will demand their reward for it.
jjav 1 days ago [-]
"Inbox" used to be literally the box/tray on your desk where people would leave work for you in written letters. That's where email got the term.
Amusingly in my first job in the 90s they still assigned each desk a labeled inbox and an outbox (two trays on the desk), but by then it was all email already so nobody ever used those on my desk. But they sat there for a few years as a memento to the 80s!
2 days ago [-]
klik99 2 days ago [-]
After years of dipping into random chapters for reference I read through the first 2.5 volumes sequentially until life got too busy. I plan on gifting the current full set to myself this xmas- but even if you just dip into it like a coffee table book it’s a wonderful read that breaks up tough sections with humor.
WillAdams 2 days ago [-]
For a fun joke, check the index entry for "Royalties, use of" --- it points to a graph which is evocative of the layout of the pipe organ in his home which was funded by TAoCP book sales.
murphyslaw 2 days ago [-]
Proctologist General's warning: DO NOT PLACE IN RESTROOM.
jll29 2 days ago [-]
Receiving one of Don's cheques ("Bank of San Serif" ;-) a few months after pointing out an error has been many a computer scientist's career highlight!
syncsynchalt 2 days ago [-]
Congrats! I have two, both for the much easier task of doing bibliographic work for the books.
ocd 2 days ago [-]
I'm sure most of it is above my head, but I purchased the entire set in a mispricing for approximately ~$40 some time ago, and I'm really happy to have it in my library.
wkoszek 2 days ago [-]
Many people do, yet when I open it from time to time and read through some sections, it can be a lot of fun
jdnier 2 days ago [-]
From Future Plans...
> And after Volumes 1--5 are done, God willing, I plan to publish Volume 6 (the theory of context-free languages) and Volume 7 (Compiler techniques), but only if the things I want to say about those topics are still relevant and still haven't been said. Volumes 1--5 represent the central core of computer programming for sequential machines; the subjects of Volumes 6 and 7 are important but more specialized.
jll29 2 days ago [-]
Not to forget he was asked specifically to write a book about compilers (= "Volume 7") by Addison Wesley in the 1960s.
Now, half a century later, he is chickening out...
jdnier 2 days ago [-]
And about Volume 5...
> Syntactic Algorithms, in preparation.
9. Lexical scanning (includes also string search and data compression)
10. Parsing techniques
sourdecor 2 days ago [-]
I really like the books listed in the link to American Scientist's book recommendations[0] on that page.
I am curious how good are the frontier LLM at recollecting reliably facts and proofs from these books.
jzer0cool 1 days ago [-]
Let C, chapters
V, volumes
W, words
Is Knuth producing V, optimally and asymptomatically approaches O(n)? Explain. If not O(n) the explain how to approach or better.
philips 2 days ago [-]
Where can the books be found in PDFs for purchase?! First time I have heard of a non paperback novel.
Obviously I know I can probably find them on the high seas.
ndr 2 days ago [-]
From TFA:
> The authorized PDF versions can be purchased at www.informit.com/taocp
philips 2 days ago [-]
Ha. Thank you! Strange it is only from one store.
disgruntledphd2 2 days ago [-]
They're really good quality though (even if they are very expensive).
philips 2 days ago [-]
Do they have wide margins like a printing or tight margins for tablets?
disgruntledphd2 2 days ago [-]
I can't remember right now, will check when I'm back at my home device.
2 days ago [-]
2 days ago [-]
zerr 2 days ago [-]
The valuable prose aside, I never liked that code examples were in a pseudo assembly language.
commandlinefan 2 days ago [-]
There are M/MIX assemblers and interpreters you can download and run - in some ways they're better than "real" programming languages because they're explicitly for instruction so usability concerns like package managers and build automation support don't get in "the way" of operating them.
mghackerlady 2 days ago [-]
It's the only thing he could've done if he wanted the books to stand the test of time
eviks 2 days ago [-]
No, a useful language can be just as understandable in the far away future, but also way more approachable in the now/near future
jll29 2 days ago [-]
I agree with that opinion. He started writing TAOCP in 1968, and could have switched to Pascal in 1972.
Pascal is simple and clear, and can be translated easily to anything from LISP, Fortran, Python to C or C++ (in fact,
subsets of Pascal are often used as sample language in books
about compilers, including in Pascal inventor N. Wirth's own compiler book (which, unlike Knuth's, was completed timely):
It does not matter that Pascal is not much in use anymore, because due to its readability, it's timeless. It nearly reads like English prose, yet is automatically executable. It has also been standardized, and there is a book-sized language description available, as are several -- commercial and open source -- implementations.
In contrast, his pseudo-assembler is arcane. Whenever I wanted to implement an algorithm following Knuth TACOP, I had to work off his English pseudo-code description rather than the associated pseudo-assembler code.
smilodoon 2 days ago [-]
You might have skipped the introduction, but the pseudo-assembler is MIX assembly language, and the hypothetical mythical machine is a central part of TAoCP. The main idea is to show how a computer works at the machine level and implement everything from the ground up, using first principles and mathematical rigor. You are right that the mythical machine itself got old, which is why it was superseded by MMIX.
So no, it’s not a blunder by DEK to avoid abstracting the complexity into higher-level languages, nor to have not written it as a handbook. TAoCP is not a handbook-like book, it is well beyond that. There are plenty of books for that. For that purposes, you might consider consulting CLRS or Skiena instead.
bazoom42 2 days ago [-]
Whould would you have preferred?
convolvatron 2 days ago [-]
consider the alternatives. it could have been written in PL-1 and rapidly become dated. or it could have been written in a slightly higher level custom language and that would also have to be taught and would be less clear about what was going on under the hood. or a kind of pseudo-code that would also admit ambiguity. or it could have been rewritten in pascal, and then java, and then javascript and then rust.
given the timespan and the focus on complete analysis of running times and not just asymptotics, in the end maybe it wasn't so terrible a choice.
jcranmer 2 days ago [-]
Well, even as-is, it turns out that the kind of assembly language that Knuth originally wrote it in itself had a very short lifespan. MIX assumes a single accumulator register for arithmetic, which hasn't been a common processor architecture since around the 1980s. MMIX is redesigned to be more RISC, but it also uses a dynamic register window concept (which itself I think was only used on Itanium, and we all know how that architecture went down).
And unfortunately, for a lot of modern algorithms, you're going to have dive into SIMD-like algorithms, something MMIX doesn't have. Also, a lot of modern processors have a decent suite of bitwise operations (e.g., count leading/trailing zeros/ones, popcount) that is also missing from MMIX.
The programming languages that are in favor may change from decade to decade, but so to does most of the assembly language techniques.
GeorgeTirebiter 2 days ago [-]
MMIX uses register windows to make stack frame pointer offsets unnecessary when referring to PUSHed arguments. Don is trying to make the algorithms understandable and correct, and by hiding some details that are handled efficiently by compilers (keeping track of FP and offsets), it benefits the human reader.
This series of books is affectionately dedicated
to the Type 650 computer once installed at
Case Institute of Technology,
in remembrance of many pleasant evenings.
MMIX is for all you youngsters who think RISC is all the rage ;-) and I think he does an admirable job creating a fully-defined machine that does use more modern hardware techniques. The fact that he fully defines his underlying machine is exactly correct, because it lays the foundation for precisely expressing the algorithms, and for giving Time and Space (runtime) estimates.
I believe it's fundamentally incorrect to think of these abstract machines as 'assembly language' but rather, I think, they define a stable foundation onto which accurately described algorithms can be expressed. You're supposed to 'play computer' and follow along -- step by step -- to understand the deep details of the algorithms.
jcranmer 2 days ago [-]
I mean, a virtual ISA (think PTX, LLVM IR, WASM) is going to do a better job of giving you an abstract machine than something like MMIX. Virtual registers and call arguments/return values as nary arguments rather than fixed registers give you most of what you want, and it's easy to augment it with a large slice of primitive operations that is a superset rather than subset of assembly languages.
(There's another criticism to level at pseudo-assembly language, which is that modern high-performance processors are superscalar with cache hierarchies, which makes the analysis of execution time itself difficult from the kind of first principles that Knuth is working at. I can appreciate why Knuth is working differently from the more traditional big-O notation of typical algorithms classes, but it does need to be acknowledged that it does sap the treatise of its supposedly timeless quality.)
GeorgeTirebiter 2 days ago [-]
I take the previous point about missing MMX / Vector instructions. Presumably, that's a straightforward optimization, when code is vectorizable? That is, yes, it would be nice to have sections on vector instruction use to demonstrate some appropriate algorithms; point taken.
I think, tho, the fundamental reason is: he specs the machine. It does exactly what he says it does. No edge cases, no surprising behavior that LLVM IR or WASM might have; also, I'm sure he spec'd it to make the algorithms he implements elegant or at least more understandable.
I suspect part our views comes from the purity of Mathematics (Knuth) and the actuality of Computer Science. I'm even sympathetic to your view, because then we could verbatim copy Knuth's algos to WASM etc and run them, and we get a twofer: a deeper understanding of the algo AND a deeper understanding of the underlying V-ISA (PTX, BEAM, WASM, LLVM IR, etc).
I think the learning / understanding of the algos Knuth presents partially comes from us Playing Computer, and manually going through the code. It's that pedagogy comes first, I think.
Next time I run into Don, I'll ask him about this. 'cause you're also correct about L1...Ln caches affecting performance drastically.
(And, yes, I had wondered why Don did MMIX he didn't create a "RISC-V" before there was a RISC-V; that is, why didn't he create the Next Great RISC Machine? He said he talked with John Hennessy and Richard Sites. This was in 1990.)
From a previous preprint titled "Claude’s Cycle", dated 2026-02-28 [2]:
[1] https://www-cs-faculty.stanford.edu/~knuth/papers/fillomino-...[2] https://www-cs-faculty.stanford.edu/~knuth/papers/claude-cyc...
Very interesting that he seems to be in the camp of “It’s ok if the machines prove it as long as we can understand and formally verify it after.”
Also: "Please do not tell me about errors that you find in an eBook, whether it's PDF or not, unless the same errors are present in a printed copy; such mistakes should be reported directly to the publisher."
Glad he thought to mention this, but I suspect his inbox will still be inundated.
https://www-cs-faculty.stanford.edu/~knuth/email.html
https://www-cs-faculty.stanford.edu/~knuth/boss.html
(usually, I do find errors in books, esp. e-books, which reminds me, I need to pick up the corrected 3rd printing of _The Fall of Arthur_ by J.R.R. Tolkien before I read it again, since that should have the error I found corrected).
In any case, someone beyond the publisher will still get inundated with corrections about the PDFs and likely will demand their reward for it.
Amusingly in my first job in the 90s they still assigned each desk a labeled inbox and an outbox (two trays on the desk), but by then it was all email already so nobody ever used those on my desk. But they sat there for a few years as a memento to the 80s!
> And after Volumes 1--5 are done, God willing, I plan to publish Volume 6 (the theory of context-free languages) and Volume 7 (Compiler techniques), but only if the things I want to say about those topics are still relevant and still haven't been said. Volumes 1--5 represent the central core of computer programming for sequential machines; the subjects of Volumes 6 and 7 are important but more specialized.
Now, half a century later, he is chickening out...
> Syntactic Algorithms, in preparation.
9. Lexical scanning (includes also string search and data compression)
10. Parsing techniques
[0]: https://www.americanscientist.org/article/100-or-so-books-th...
Obviously I know I can probably find them on the high seas.
> The authorized PDF versions can be purchased at www.informit.com/taocp
Pascal is simple and clear, and can be translated easily to anything from LISP, Fortran, Python to C or C++ (in fact, subsets of Pascal are often used as sample language in books about compilers, including in Pascal inventor N. Wirth's own compiler book (which, unlike Knuth's, was completed timely):
Wirth, Niklaus, Compilers (1996), 101pp., 2rd revision, 2017, online: https://people.inf.ethz.ch/wirth/CompilerConstruction/Compil..., last accessed 2026-07-07).
It does not matter that Pascal is not much in use anymore, because due to its readability, it's timeless. It nearly reads like English prose, yet is automatically executable. It has also been standardized, and there is a book-sized language description available, as are several -- commercial and open source -- implementations.
In contrast, his pseudo-assembler is arcane. Whenever I wanted to implement an algorithm following Knuth TACOP, I had to work off his English pseudo-code description rather than the associated pseudo-assembler code.
So no, it’s not a blunder by DEK to avoid abstracting the complexity into higher-level languages, nor to have not written it as a handbook. TAoCP is not a handbook-like book, it is well beyond that. There are plenty of books for that. For that purposes, you might consider consulting CLRS or Skiena instead.
given the timespan and the focus on complete analysis of running times and not just asymptotics, in the end maybe it wasn't so terrible a choice.
And unfortunately, for a lot of modern algorithms, you're going to have dive into SIMD-like algorithms, something MMIX doesn't have. Also, a lot of modern processors have a decent suite of bitwise operations (e.g., count leading/trailing zeros/ones, popcount) that is also missing from MMIX.
The programming languages that are in favor may change from decade to decade, but so to does most of the assembly language techniques.
Don's first computer was the IBM 650 https://en.wikipedia.org/wiki/IBM_650?useskin=vector see also http://ed-thelen.org/comp-hist/KnuthIBM650Appreciation.pdf so MIX was a simplified version of the 650 because, well, it's well-defined and simple -- and Don knew a popular IBM machine very well. And there's this, in Vol 1:
This series of books is affectionately dedicated to the Type 650 computer once installed at Case Institute of Technology, in remembrance of many pleasant evenings.
MMIX is for all you youngsters who think RISC is all the rage ;-) and I think he does an admirable job creating a fully-defined machine that does use more modern hardware techniques. The fact that he fully defines his underlying machine is exactly correct, because it lays the foundation for precisely expressing the algorithms, and for giving Time and Space (runtime) estimates.
I believe it's fundamentally incorrect to think of these abstract machines as 'assembly language' but rather, I think, they define a stable foundation onto which accurately described algorithms can be expressed. You're supposed to 'play computer' and follow along -- step by step -- to understand the deep details of the algorithms.
(There's another criticism to level at pseudo-assembly language, which is that modern high-performance processors are superscalar with cache hierarchies, which makes the analysis of execution time itself difficult from the kind of first principles that Knuth is working at. I can appreciate why Knuth is working differently from the more traditional big-O notation of typical algorithms classes, but it does need to be acknowledged that it does sap the treatise of its supposedly timeless quality.)
I think, tho, the fundamental reason is: he specs the machine. It does exactly what he says it does. No edge cases, no surprising behavior that LLVM IR or WASM might have; also, I'm sure he spec'd it to make the algorithms he implements elegant or at least more understandable.
I suspect part our views comes from the purity of Mathematics (Knuth) and the actuality of Computer Science. I'm even sympathetic to your view, because then we could verbatim copy Knuth's algos to WASM etc and run them, and we get a twofer: a deeper understanding of the algo AND a deeper understanding of the underlying V-ISA (PTX, BEAM, WASM, LLVM IR, etc).
I think the learning / understanding of the algos Knuth presents partially comes from us Playing Computer, and manually going through the code. It's that pedagogy comes first, I think.
Next time I run into Don, I'll ask him about this. 'cause you're also correct about L1...Ln caches affecting performance drastically.
(And, yes, I had wondered why Don did MMIX he didn't create a "RISC-V" before there was a RISC-V; that is, why didn't he create the Next Great RISC Machine? He said he talked with John Hennessy and Richard Sites. This was in 1990.)
Here's HN on RISC-V vs MMIX: https://news.ycombinator.com/item?id=14635361
They were all the rage for a while, because they make procedure calls fast but turn out to have subtle issues in highly-multithreaded scenarios.
Educational books are an investment in the future, and some (like Euclid's Elements) don't ever lose their relevance.
- i could buy a laptop at the price of the books being sold here. it is just tooo much.
- the author needs to take PPP into account and price accordingly similar to how steam does it
- i could get a really good meal for 500 rs at a good restaurant here
- the cost of the book is close to 80 such meals
- if we price it in your currency assuming 100$ for a really decent meal, the author is charging 8000$ for the books