This is the homepage of the Thinking Forth project.
Thinking Forth captures the philosophy of the language to show users how to write more readable, better maintainable applications. This project makes the book available in electronic form (LaTeX and PDF).
The project has two milestones: the reprint and the 21st century version. The reprint is done, scroll down for the ongoing project.
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.
So flip open the book, and read 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.
Leo Brodie wrote Thinking Forth in 1984. Since the book went out of print now the second time (due to FIG folding up - FIG did the reprint), he allowed to publish Thinking Forth as electronic book under a Creative Commons license (attribute, non-commercial, share-alike) .
Release 1.0 is a reprint with typos fixed, and high-quality typesetting. The book is available as
Release 1.0 also is available as printed book from "Punchy Publising" (Leo Brodie's single-book publishing company) through Amazon. The ISBN number is 0-9764587-0-5.
If you read the PDF with Adobe Reader, change the following settings in the Edit -> Preferences -> General... dialog box to improve display quality:
When you cut&paste from Adobe Reader, some special characters (ligatures) like fi and ff and left/right quotes won't show up as expected. Other PDF readers like xpdf do a better job here. If you really want to lay hand on the text, using the sources is probably a much better idea, anyway.
The first step, the reprint, is now done. The open nature of the license however allows us to update the book to current 21th century practice, and to add the missing chapters. The plan so far consists of
A first preprint is available.
Most of the resources available now are for people who participate in the effort to make the printed Thinking Forth available as LaTeX sources. Developers need a Sourceforge Account, if you have one, send your account name to me Bernd Paysan <bernd.paysan@gmx.de>.
If you want to just read Thinking Forth, you better download the PDF.
export CVS_RSH=ssh cvs -z3 -d:ext:developername@thinking-forth.cvs.sourceforge.net:/cvsroot/thinking-forth co thinking-forth
Once you've checked out that directory, it's sufficient to do
cvs update
there to get more recent versions. cvs add
filename adds a
new file, and cvs ci
checks modified (and added) files into the
repository. More documentation can be found on the
CVS homepage.
If you like to, you can also use a GUI frontend like WinCVS on Windows.