Programming Books C Java PHP Python Learn more Browse Programming Books
Buy New
$35.15
Qty:1
  • List Price: $37.95
  • Save: $2.80 (7%)
Only 4 left in stock (more on the way).
Ships from and sold by Amazon.com.
Gift-wrap available.
Add to Cart
Have one to sell? Sell on Amazon
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See this image

Software Tools Paperback – January 11, 1976

ISBN-13: 078-5342036695 ISBN-10: 020103669X Edition: 1st

Buy New
Price: $35.15
19 New from $30.91 43 Used from $0.01 1 Collectible from $9.98
Amazon Price New from Used from
Paperback
"Please retry"
$35.15
$30.91 $0.01

Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student



Frequently Bought Together

Software Tools + The Unix Programming Environment (Prentice-Hall Software Series) + The Practice of Programming (Addison-Wesley Professional Computing Series)
Price for all three: $113.61

Buy the selected items together

NO_CONTENT_IN_FEATURE

Shop the New Digital Design Bookstore
Check out the Digital Design Bookstore, a new hub for photographers, art directors, illustrators, web developers, and other creative individuals to find highly rated and highly relevant career resources. Shop books on web development and graphic design, or check out blog posts by authors and thought-leaders in the design industry. Shop now

Product Details

  • Paperback: 352 pages
  • Publisher: Addison-Wesley Professional; 1 edition (January 11, 1976)
  • Language: English
  • ISBN-10: 020103669X
  • ISBN-13: 978-0201036695
  • Product Dimensions: 0.7 x 6.3 x 9.1 inches
  • Shipping Weight: 1.2 pounds (View shipping rates and policies)
  • Average Customer Review: 4.2 out of 5 stars  See all reviews (9 customer reviews)
  • Amazon Best Sellers Rank: #645,827 in Books (See Top 100 in Books)

Editorial Reviews

From the Back Cover

With the same style and clarity that characterized their highly acclaimed book, The Elements of Programming Style, the authors have written Software Tools to teach how to write good programs that make good tools. The programs contained in the book are not artificial, but are actual programs ae tools which have proved valuable in the production of other programs.

Modern programming techniques such as structured programming and top-down design are emphasized and applied to every program. The programs are presented in a structured language called Ratfor ("Rational Fortran") which can be easily understood by anyone familiar with Fortran or PL/I, Algol, PASCAL, or similar languages. (Ratfor translates readily into Fortran or PL/I. One of the tools presented is a preprocessor to translate Ratfor into Fortran). All of the programs are complete and have been tested directly from the text. The programs are available in machine-readable form from Addison-Wesley.

Software Tools is ideal for use in a "software engineering" course, for a second course in programming, or as a supplement in any programming course. All programmers, professional and student, will find the book invaluable as a source of proven, useful programs for reading and study. Numerous exercises are provided to test comprehension and to extend the concepts presented in the text.



020103669XB04062001

About the Author

Brian W. Kernighan works in the Computing Science Research Center at Bell Laboratories, Lucent Technologies. He is Consulting Editor for Addison-Wesley's Professional Computing Series and the author, with Dennis Ritchie, of The C Programming Language.

P.J. Plauger is President of Whitesmiths, Ltd., New York. Dr. Plauger received a Ph.D. in Nuclear Physics from Michigan State University. He is a member of ACM, the American Physical Society, and the Science Fiction Writers of America.



020103669XAB04062001

Customer Reviews

4.2 out of 5 stars
5 star
6
4 star
1
3 star
0
2 star
2
1 star
0
See all 9 customer reviews
This is because it changed my whole perspective about writing software.
Umesh Vyas
Programming languages are and will always be stupid, and that's why I need to transform them to be MY language.
You Xu
It should be required reading for anyone who wants to do software development.
Brian Connors

Most Helpful Customer Reviews

24 of 24 people found the following review helpful By A Williams on October 17, 2001
Format: Paperback
Elsewhere on Amazon I reviewed Kernighan's "Elements of Programming Style." To quote one paragraph from that review -
Brian Kernighan has co-authored three books almost essential to learning our craft, this volume, "Software Tools" and "The Unix Programming Environment". "Elements of Programming Style" spells out the fundamental rules, "Software Tools" shows you how to apply them to a number of simple projects and extends the rules to software design and finally "The Unix Programming Environment" shows you how to use them in an operating system designed to reward you for your effort.
It could be said that "Elements" teaches programming and "Software Tools" teaches software design. Rules such as "do just one thing, do it well" seem to seep in through the pores as you read and work through this book.
It presents a number of projects starting with a word count program and progressing through some filters to some fairly complex tasks culminating in a RatFor pre-processor for Fortran. All the examples are written in RatFor, a version of Fortran that adds some more structured elements to that early language.
Don't be put off by the use of RatFor, the language is easily understood and the style of programming so clear that the algorithms are easily understood. I've personally translated a fair number of them to both BASIC and C and the RatFor pre-processor design became the basis for an AppleSoft BASIC pre-processor written by a close friend.
I've relied on this book so much for the last ten years, after writing "Hello World" I drag it out and translate a couple of the tools into every new language I've learnt. I then spend a day or two thinking about and implementing a design optimised for the new language.
Read more ›
1 Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
33 of 37 people found the following review helpful By A Customer on March 31, 1998
Format: Paperback
Software Tools. I can't say enough about how important this book was - and still is - to me. The Software Tools in Pascal version does not have the same effect - it doesn't really work. But Software Tools gets across the idea that you do not have to accept the constraints of your environment to produce excellent programs. Instead, develop the program the way is should be and make a surprisingly small effort to then map it to your environment. Don't let the environmental problems constrain your thinking or actual programming. Then with a little effort you can get your environment to match what you need. The book develops a series of software tools, unix style commands, but implements them in a language called RATFOR (Rational Fortran). This is done because Fortran IV was universal at the time, but also horrible as a structured programming language. The delima: Use a better but less widely available language, or use a horrible but very popular and standard language. The author's choice - and the philosophy of the book - don't be boxed in by this choice. They added to Fortran the structures found in C and then wrote a preprocessor to translate this RATFOR to Fortran. The end result was the best of both worlds: well structured programs that will run on just about anything. The whole book is about this kind of choice. It is great philosophy for software development and great philosophy for life. END
1 Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
11 of 11 people found the following review helpful By Brian Connors VINE VOICE on November 2, 2003
Format: Paperback
The tools you will find in this book are ancient. They're written in a cockeyed hybrid of C and Fortran, and they're almost hilariously user-hostile by modern definitions. If this intimidates you, look at it this way -- you're looking under the hood of modern applications. Much modern word processing, page layout, and language implementation can be built by putting a nice, shiny coating on what you find in this book.
Kernighan and Plauger set out in this book to document what they used in their labs at the time it was written, and show how to build them. Ratfor was chosen because C was not as widespread then as it is now, and for those who didn't have it, a translator to standard Fortran '77 was one of the major parts of the book. A simplified version of the nroff text formatter and a version of ed are also included for text file processing (then as now one of the major uses for computers), the result being both a toolkit and a practical education in the ins and outs of applications development.
The environment given is not Unix-based inherently, but this book is a natural companion to Kernighan and Rob Pike's The Unix Programming Environment and John Lions' Commentary on Unix 6th Edition. It should be required reading for anyone who wants to do software development.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
6 of 7 people found the following review helpful By You Xu on November 15, 2008
Format: Paperback Verified Purchase
In a certain way, software engineering is an art. In the past few decades, we have found some best practices. Nowadays there are tons of buzzwords out there -- agile, BDD, TDD, KISS... It's easy to get lost in the jungle of "software engineering methodologies". There is no silver bullet though. Instead of chasing those buzzwords in the hope of finding the best way to write software, my personal experience tells me that we should go back to the root of software engineering: why we are writing software, and what is the relationship between software developer, software, and machine. I think Software Tools answered those fundamental questions elegantly. Or, at least it brought up those questions.

This book covers almost every aspect of programming, in the context of writing practical command line tools for UNIX. At that time, FORTRAN was the de facto programming language. There was a big cognitive gap between the programming language at hand (unstructured, messy, low-level), and the programming model in our head (structured, clean, abstract, high-level). To address this problem, the authors proposed to build software "into" the programming language, instead of "in" the programming language. This insight is still valid today, because we still haven't found a programming language that can match the thought pattern of human brain directly. We still have to manually translate our high-level thoughts into low-level program statements. Software engineering about conquering not only the complexity of the outside world (e.g. the inherent complexity of the task that software want to handle), but also the complicity of the programming language itself (e.g. the language itself is not as neat as our thoughts).
Read more ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

Customer Images

Search

What Other Items Do Customers Buy After Viewing This Item?