Reading Group?

Joe Nelson joe at begriffs.com
Fri Mar 27 23:13:40 UTC 2020


Brian H wrote:
> I was wondering if there would be any interest in a reading group for
> the book "The Art of Computer Programming" starting with volume 1.

That series is overwhelming, you'd need to scale down the scope. For
instance the exercises are rated on a logarithmic scale of difficulty:

	00 Immediate
	10 Simple (one minute)
	20 Medium (quarter hour)
	30 Moderately hard
	40 Term project
	50 Research problem

They are also marked:

	▶  Recommended
	M  Mathematically oriented
	HM Requiring "higher math"

Speaking for myself, I'd probably pick problems that are less than or
equal to 20 in difficulty, and probably only the recommended ones.
There's only so much time in a day to learn things, and there are other
topics that I feel are more exciting.

TAOCP uses a hypothetical computer architecture called MIX. Check out
the wikipedia page, it's weird.

	When programmed in binary, each byte has 6 bits (values range from 0
	to 63). In decimal, each byte has 2 decimal digits (values range
	from 0 to 99). Bytes are grouped into words of five bytes plus a
	sign.

The integers are sign-magnitude rather than twos' complement, and there
are only nine registers with special purposes. You program the machine
with an assembly language called MIXAL.

Subsequently Knuth switched to an improved 64-bit RISC architecture
called MMIX. I think the goal behind both of these architectures was to
make the book timeless, and not a vendor-specific trade publication.
However, I personally don't want to commit any of that stuff to memory.
I'd rather use a medium level language like C and reason using the C
abstract machine model.

That's why if I were learning algorithms I would probably go through
Sedgewick's book "Algorithms in C." I understand it may not match your
goals because it doesn't go very deep into correctness proofs or
mathematical analysis.


More information about the Friends mailing list