Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watmath!clyde!cbosgd!ihnp4!ho95e!wcs From: wcs@ho95e.UUCP Newsgroups: comp.misc Subject: Knuth (was Re: Assembly language Message-ID: <1668@ho95e.ATT.COM> Date: Tue, 18-Aug-87 01:20:27 EDT Article-I.D.: ho95e.1668 Posted: Tue Aug 18 01:20:27 1987 Date-Received: Wed, 19-Aug-87 07:34:40 EDT References: <8707190424.AA10158@cogsci.berkeley.edu> <434@sugar.UUCP> <3664@well.UUCP> <7197@think.UUCP> Reply-To: wcs@ho95e.UUCP (46133-Bill.Stewart,2G218,x0705,) Organization: AT&T Bell Labs 46133, Holmdel, NJ Lines: 40 :>>Fear not, you're in good company. Donald E. Knuth (yes, that Knuth) is one :>>of the worst offenders. His "Art of computer programming" is almost useless :>>for day-to-day use because of "MIX". [ ... ] :> You didn't read his introduction to the book. It's a cookbook of :>algorithms, with sample implementation in a hypothetical language. Knuth's books *are* useful, both for learning and for practical work. Why was ALGOL written some 15 years before Vol 1? It was to provide a concise, unambiguous language for describing algorithms to *people*. Knuth describes most of his algorithms in two forms: - Spaghetti-code English - MIX The main purpose of the MIX code is to show how much work a "real" machine would have to do executing the programs, and as such it's valuable. But he could have done the same in minimal ALGOL, or alternatively designed used a simpler machine model, with more readable programs (even PDP-11 subset). English is great for describing things on a high-level, but ALGOL would be as good or better for most of his programs. Obviously, today you'd use Pascal or C or maybe Ada instead of ALGOL. His mathematical derivations are great. But to call the book a cookbook, you need to be able to find what you want and use it easily. Many good cookbooks spend a lot of time telling you technique and theory, but then put the recipes in a clear and easy-to-read form. Sure, you lose some of the esthetics if the recipe's not in the original Greek or Sanskrit, but after you've translated it once it's nice to have an English version around to make dinner from. I'd use my copies of Knuth a lot more if I could read them easily. Knuth's probably incurable. TeX feels like an assembler language. It's a much *cleaner* language than troff, but it looks just as grungy, and needs LaTeX almost as badly as troff needs -mm. There's a lot of high-level things going on, some of which are quite respectable, but it's unnecessarily unfriendly and hard to use. As for MeTaFoNT, there's no accounting for taste; it's a snazzy system but I think CMR is *ugly* stuff. -- # Thanks; # Bill Stewart, AT&T Bell Labs 2G218, Holmdel NJ 1-201-949-0705 ihnp4!ho95c!wcs