engtao@bookwyrm.tech reviewed Thinking Forth by Leo Brodie
A great book about Forth and about programming
4 stars
Thinking Forth is one of the very few books on this very interesting programming language that goes beyond the syntax and into the philosophy of the language. This is important because Forth is very different to other programming language, due to its explicit use of the stack and its dictionary-based structure. These changes make a significant difference to what good code looks like in Forth compared to other languages... The functions are very short and build up from low to high level, resulting in a domain-specific language that is an expression of the problem being solved and the individual programmer's approach to understanding and solving the problem.
The book contains a number of relatively simple but not trivial examples to illustrate good approaches and to point out common pitfalls. The style of writing, like Leo Brodie's other book 'Starting Forth' is relaxed, and makes liberal use of cartoons, which may …
Thinking Forth is one of the very few books on this very interesting programming language that goes beyond the syntax and into the philosophy of the language. This is important because Forth is very different to other programming language, due to its explicit use of the stack and its dictionary-based structure. These changes make a significant difference to what good code looks like in Forth compared to other languages... The functions are very short and build up from low to high level, resulting in a domain-specific language that is an expression of the problem being solved and the individual programmer's approach to understanding and solving the problem.
The book contains a number of relatively simple but not trivial examples to illustrate good approaches and to point out common pitfalls. The style of writing, like Leo Brodie's other book 'Starting Forth' is relaxed, and makes liberal use of cartoons, which may not be to everyone's taste.
Having said that, there is a lot of wisdom in the book, and the comments of very experienced programmers, including the designer of the language, are very helpful to gaining an understanding of the way you need to think in order to solve programming problems in a Forth-like way.
Forth went through a very lean period but is undergoing a resurgence in the field of microcontroller programming. Because of this, there are very few resources for learning the language. Thinking Forth, because it was written in the 1980s, shows its age, but it's still the only book I can honestly recommend for achieving a deep understanding of this fascinating programming language.