Notes for Donald E. Knuth Selected Papers on Computer Science

Key concepts: algorithm, computation, data, information, program.

Related theorists: .


Chapter 0
Algorithms, Programs, and Computer Science
1. Algorithm and Program; Information and Data

Definitions of algorithm abstract method for computing input from output, program embodiment of computational method in some language, computation as information processing; information and data likewise distinguished as abstract and qualified.

(1) To me the word algorithm denotes an abstract method for computing some output from some input, while a program is an embodiment of a computational method in some language.
(1) By “computation” I mean essentially the same thing as what many people nowadays call “data processing,” “symbol manipulation,” or more generally “information processing.”
(1) There seems to be confusion between the words
information and data much like that between algorithm and program.

2. Computer Programming and Computer Science

Statements of computer program and algorithm; evaluation of programs based on quickness of machine performance and clearness of understanding by humans.

(2) A computer program is a representation of an algorithm in some well-defined language. Algorithms are abstract computational procedures for transforming information; programs are their concrete embodiments.

Discipline of computer science deals with complex phenomena surrounding computers, answering question what can be automated.

(3) Computer programming and the analysis of algorithms are, in turn, subfields of a considerably larger discipline called computer science, which deals with all of the complex phenomena surrounding computers.
(3) Computer science answers the question “What can be automated?”

Knuth, Donald E. Selected Papers on Computer Science. Leland Stanford Junior University: Center for the Study of Language and Information, 1996. Print.