Earlier quoted context omitted.
My take on it: https://www.2uo.de/Books/316-bible-texts-illuminated/
Interesting! A small correction: "innumerate" means "incapable of doing arithmetic"; perhaps you meant "innumerable", which means "incapable of being counted". Also you have "wuthor" for "author", "bible" for "Bible", "donÄt" for "don’t", "WHat" for "What", and "theologician" for "theologian".
Knuth's Art of Computer Programming, V 4B, has gone into print
51–60 of 357 posts
Re: Knuth's Art of Computer Programming, V 4B, has gone into print
#52The fourth volume of The Art of Computer Programming deals with Combinatorial Algorithms, the area of computer science where good techniques have the most dramatic effects. I love it the most, because one good idea can often make a program run a million times faster. It's a huge, fascinating subject, and I published Part 1 (Volume 4A, 883 pages, now in its twenty-first printing) in 2011.
Re: Knuth's Art of Computer Programming, V 4B, has gone into print
#53Earlier quoted context omitted.
> However, if you look very carefully you can find mistakes. Opened the book, thought "no, it can't be". Agonized for days and weeks if I'm making a fool of myself. Sent the bug report. First word in first sentence in first paragraph in first chapter was wrong. Got my cheque. ;-)
What was it?!
But the number of parameters is finite, and all parameters have a finite number of possible values.
His errata changed the wording thus:
Zillions of alphabets can be generated by the programs in this book. (https://ftp.rrze.uni-erlangen.de/ctan/systems/knuth/dist/err...)
Re: Knuth's Art of Computer Programming, V 4B, has gone into print
#54Can someone write a volume 0 or volume -1 or some guide so noobs like me who want to enter this treasure chest can do so. I got lost just trying to start this so it might be over my head. I know Python, rusty on Java and cpp never touched assembly.
Re: Knuth's Art of Computer Programming, V 4B, has gone into print
#55In Google’s recent “Hacking Google” series [1] they appeared to credit Knuth via his bug reward program in his books [2] as having created the first software bug bounty offer. Anyone aware of any software bug bounties that predate Knuth’s? ___________ [1] https://news.ycombinator.com/item?id=33066313 - specifically: https://youtube.com/watch?v=IoXiXlCNoXg&list=PL590L5WQmH8dsx... [2] https://wikipedia.org/wiki/Knuth_r…
> So I sat down with him and proofread the pages as they came out of the typewriter. It seemed that he was composing and typing as fast as I could read. By morning the manual was done. Years later when don's first book came but, he told me that if I would proofread it for him that he would pay me a dollar for every error that I found, including typographical errors. I took the offer as a great personal compliment at the time, but I think that he probably made that a standing-offer to anyone.
also from earlier in that essay:
> don claimed that he could write the compiler and a language manual all by himself during his three and a half month summer vacation. He said that he would do it for $5000. Our Fortran compiler required a card reader, card punch. line printer and automatic floating point. Don said that he would not need the card reader or card punch, but he wanted a magnetic tape unit and paper tape. I asked Gerard Guyod how Brad could have been suckered into paying this college kid $5000 to write something that had to be a piece of junk if he was only going to spend three and a half months on it. Gerard whispered his response to me. He said "We think that he already has it written. He probably did it in his spare time while working in the computer center at Case Institute." I still wasn't entirely satisfied with that answer because I was a college graduate whose first job was for 5325 per month and I had just changed jobs and was making $525 per month. Besides that it was taking mortal human beings 25 man-years to write compilers: not three and a half man-months. I thought that Brad had taker leave of his senses.
Re: Knuth's Art of Computer Programming, V 4B, has gone into print
#56Can someone honestly tell me if they have actually read these books AND found them useful ON TGE JOB? What do you guys do for work? I tried reading part 1?? Like ten years ago and it was pretty much assembly language or something I believe. And gave up since it wasnt something that I needed in academia back then and there were far better ways to learn DSA
In terms of actual programming use, not much, but I still haven't read the other volumes yet.
Re: Knuth's Art of Computer Programming, V 4B, has gone into print
#57Can someone honestly tell me if they have actually read these books AND found them useful ON TGE JOB? What do you guys do for work? I tried reading part 1?? Like ten years ago and it was pretty much assembly language or something I believe. And gave up since it wasnt something that I needed in academia back then and there were far better ways to learn DSA
TAoCP is aiming at damn near "perfection" of programming. Donald Knuth is analyzing the exact assembly language of all of his decision-making with these algorithms. The assembly language is represented as a random variable, and an _exact_ count of those assembly language statements (in loops and other complex jumps) is analyzed.
Everything from the highest-level algorithm design / mathematical concepts is discussed... down to the lowest-level assembly level details / implementation of the code. And everything in between.
-----------
As such, when Knuth / TAoCP covers a subject, it feels comprehensive, in a way that no other writer has ever accomplished.
So how does this work out in practice? Well, there's plenty of tutorials on hash tables out there. But only Knuth's writing on Hash tables / linear probing has ever hit the entire subject for me.
Other books will go over linear probing vs quadratic probing vs double-hashing. Meanwhile, Knuth carefully derives the formulas of each, and how it changes at the assembly level implementation.
-----
Is that useful for workplace environment? Probably not. In work, you only need to know "Linear Probing Hash Tables work like this, do it", and maybe not the analysis of it.
But if you're doing more fundamental programming, such as "GPU Implementation of Hash Table", something that very few other people have done... the Knuth-level analysis is the only thing that hits "rock bottom" and gives me all the insight "behind" the data-structure and its design.
I'd say Knuth's stuff is for people who invent new fundamental data-structures or other implementation details like that. Its not for typical workplace programming.
--------
For anyone who wants to know Knuth's writing style, I think his writing on Alpha-beta pruning (from the 1970s) is an excellent introduction to Knuth's writing style.
"An Analysis of Alpha-Beta Pruning" by Knuth / Moore, 1975.
Alpha-beta pruning always was kinda mystical to me. But Knuth recognizes the intermediate steps needed to understand the subject fully. The brilliance of discussing F1 (branch-and-bound) before discussing F2 (alpha-beta pruning) cannot be understated.
Knuth recognized that branch-and-bound is what most people thought of by Alpha-beta pruning. But then comes up with specific examples where F2 (true alpha-beta pruning) makes a difference over F1. And then uses math to demonstrate how often these cases come up.
Does it help in implementing AB pruning? I dunno. But it helps a lot if you wanna change AB pruning / change the fundamental search and understand why things are done that way. You only need to study "F2" if you're copy/paste programming. But the study and analysis into "F1" (branch and bound) holds deeper understandings to the entire concept of search trees.
Even if you never, ever, ever will program F1.
Re: Knuth's Art of Computer Programming, V 4B, has gone into print
#58Earlier quoted context omitted.
What was it?!
"Infinitely many alphabets can be generated by the programs in this book". But the number of parameters is finite, and all parameters have a finite number of possible values. His errata changed the wording thus: Zillions of alphabets can be generated by the programs in this book. ( https://ftp.rrze.uni-erlangen.de/ctan/systems/knuth/dist/err... )
I was so excited.
I then checked the errata. It was known.
It took another 20 years before I found an actual mistake, regarding the early history of superimposed codes. A very specialized topic where I have one of the few copies of the patent challenge distinguishing between random superimposed codes and arbitrarily selected superimposed codes.
I have a check.
Re: Knuth's Art of Computer Programming, V 4B, has gone into print
#5950 years ago, he claimed he was going to write 10 volumes of TAOCP. The actuarial tables are not encouraging here. He doesn't respond to emails, but his assistant does, and I sent a copy of my book about Xerox to his home address. No answer. But hey, it was worth a shot.
Once I recognized him, I told him that I preordered a set of the latest edition of The Art of Computer Programming. He made a joke about collecting royalties from all the books he sold.
I'm glad I had the opportunity to speak to Donald Knuth! I actually saw him earlier this year at a Stanford symposium, but I didn't get to speak to him.
Re: Knuth's Art of Computer Programming, V 4B, has gone into print
#60Can someone honestly tell me if they have actually read these books AND found them useful ON TGE JOB? What do you guys do for work? I tried reading part 1?? Like ten years ago and it was pretty much assembly language or something I believe. And gave up since it wasnt something that I needed in academia back then and there were far better ways to learn DSA
Vol 1 is just an intro to math and his language, you don't really need it, but it's kinda fun. I read some of Vol 2, Seminumerical Algorithms, to hone my instincts on how random numbers work in practice. I have referred to it on occasion when people say things like, "if we seed the random number generator, take the random number, then feed that into the seed, the result would be more random." I read most of Vol 3, So…