|2020ok Directory of FREE Online Books and FREE eBooks|
by Leo Brodie
(Respecting the intellectual property of others is utmost important to us, we make every effort to make sure we only link to legitimate sites, such as those sites owned by authors and publishers. If you have any questions about these links, please contact us.)
Now in it's Third Edition (2004), this enduring work is the only book to fully explore not just the semantics of the Forth programming language, but also the philosophy and style that is used by its most successful practitioners. Interestingly, this philosophy applies well to programming practice in any language.
From the Publisher
Thinking Forth is a book about the philosophy of problem solving and programming style, applied to the unique programming language Forth. Published first in 1984, it could be among the timeless classics of computer books, such as Fred Brooks' The Mythical Man-Month and Donald Knuth's The Art of Computer Programming.
Many software engineering principles discussed here have been rediscovered in eXtreme Programming, including (re)factoring, modularity, bottom-up and incremental design. Here you'll find all of those and more, such as the value of analysis and design, described in Leo Brodie's down-to-earth, humorous style, with illustrations, code examples, practical real life applications, illustrative cartoons, and interviews with Forth's inventor, Charles H. Moore as well as other Forth thinkers.
If you program in Forth, this is a must-read book. If you don't, the fundamental concepts are universal: Thinking Forth is meant for anyone interested in writing software to solve problems. The concepts go beyond Forth, but the simple beauty of Forth throws those concepts into stark relief.
You'll learn all about the philosophy of Forth, analysis, decomposition, problem solving, style and conventions, factoring, handling data, and minimizing control structures. But be prepared: you may not be able to put it down.
This book has been scanned, OCR'd, typeset in LATEX, and brought back to print (and your monitor) by a collaborative effort under a Creative Commons license.
Building models in the mind is both the challenge and the joy of programming. How should we prepare for it? Arm ourselves with better debuggers, decompilers, and disassemblers? They help, but our most essential tools and techniques are mental. We need a consistent and practical methodology for thinking about software problems. That is what I have tried to capture in this book. Thinking Forth is meant for anyone interested in writing software to solve problems. It focuses on design and implementation; deciding what you want to accomplish, designing the components of the system, and finally building the program.
The book stresses the importance of writing programs that not only work, but that are also readable, logical, and that express the best solution in the simplest terms.
Although most of the principles described here can be applied to any language, I've presented them in the context of Forth. Forth is a language, an operating system, a set of tools, and a philosophy. It is an ideal means for thinking because it corresponds to the way our minds work. Thinking Forth is thinking simple, thinking elegant, thinking flexible. It is not restrictive, not complicated, not over-general. You don't have to know Forth to benefit from this book. Thinking Forth synthesizes the Forth approach with many principles taught by modern computer science. The marriage of Forth's simplicity with the traditional disciplines of analysis and style will give you a new and better way to look at software problems and will be helpful in all areas of computer application.
If you want to learn more about Forth, another book of mine, Starting Forth, covers the language aspects of Forth. Otherwise, Appendix A of this book introduces Forth fundamentals.
Related Free eBooks