The Craft of Programming
by John C. Reynolds
Publisher: Prentice Hall 1981
ISBN/ASIN: 0131888625
ISBN-13: 9780131888623
Number of pages: 434
Description:
The modern computer is so powerful that a casual knowledge of programming suffices for most of its users. However, a variety of circumstances can abruptly require a much deeper understanding: the need to structure a program carefully to avoid being overwhelmed by its complexity, the need to insure reliability beyond what can he achieved by debugging, or the need to utilize computing resources efficiently. Beyond such practical considerations, there is an inherent intellectual satisfaction in mastering the fundamental concepts of programming. The aim of this book is to provide such mastery concept by concept. For example, the reader is expected to understand proofs of correctness and order-of-magnitude time requirements for simple integer algorithms - such as log n exponentiation - before the concept of arrays is introduced. A similarly thorough understanding of array manipulating algorithms is expected before the introduction of procedures.
Download or read it online for free here:
Download link
(28MB, PDF)
Similar books

by Karthik Naidu - GitBook
These are engineer's notes on problem solving. They are ideally suited as practice material for coding interviews. Each post has 5 sections: problem statement, examples, algorithm, code, test cases, and a discussion on time-complexity.
(9165 views)

by Lawrence C Paulson - University of Cambridge
This text teaches programming and presents some fundamental principles of computer science, especially algorithm design. The programming in this course is based on the language ML and mostly concerns the functional programming style.
(25242 views)

by Chris Pine - Pragmatic Bookshelf
Pine teaches you how to program in Ruby with a minimum of fuss or bother. Starting with simple one-line programs, you'll see how to have your webpage send you email, to shuffle your music, to rename your photos from your digital camera, and more.
(22563 views)

by Allen Cypher - The MIT Press
Programming by Demonstration is a method that allows users to create programs by demonstrating what the program should do. The book describes 18 implementations of Programming by Demonstration, and discusses the problems for this method.
(17245 views)