Is there a good book for learning FORTH
Posted: Mon Mar 21, 2016 10:17 am
I searched some books in my university library, and I found a couple of them in both English and French language (my native language), however they were terrible. The explanation of what was going on were really unsatisfying, and they didn't contain enough exercises to assimilate the theory. The best book was decent to learn the basics (i.e. use FORTH as a calculator), but lost me as soon as an operation that implies ALLOT, CREATE and DOES> words, and my understanding is that those two words are really central and are what set apart FORTH from a simple calculator to a real programming language.
Also the book was detailed about a feature that would be seldom used (double words and how to compute using double words) but I have no idea how to display text, or use a fixed-length array, which is absolutely basic functionality for a programming language.
Finally all those books were too focused on platform specific things, and wouldn't apply to neither GFORTH (running on a modern PC hardware) nor the 6506 (extremely limited 8-bit platform). Things like memory pages or dictionary lookup are really platform specific and should be treated in annex and not in the book I guess - or at least they should be treated in a specific chapter in the book.
I know there is lots of tutorials online, but I prefer to learn programming languages with real, paper books. The reason why is very simple : When I am on my PC I have other things to do than learn a programming language.
So is there such a book that is:
1. Not platform specific (especially not about an extinct/unused platform)
2. Remains high level - if low level stuff is explained it needs to be explained apart from the high level stuff - there is no need to detail endianness or how pointer works internally in the middle of a high level chapter for instance.
3. Contain plenty of interesting/sufficient challenging exercises (not trivial things like : Do the following calculation), ideally with corrections
4. Do not explain only the basics but also advanced topics on how to get fairly complex programs working in FORTH
5. Is available in either English or French, preferably French, but English is no major problem.
Also the book was detailed about a feature that would be seldom used (double words and how to compute using double words) but I have no idea how to display text, or use a fixed-length array, which is absolutely basic functionality for a programming language.
Finally all those books were too focused on platform specific things, and wouldn't apply to neither GFORTH (running on a modern PC hardware) nor the 6506 (extremely limited 8-bit platform). Things like memory pages or dictionary lookup are really platform specific and should be treated in annex and not in the book I guess - or at least they should be treated in a specific chapter in the book.
I know there is lots of tutorials online, but I prefer to learn programming languages with real, paper books. The reason why is very simple : When I am on my PC I have other things to do than learn a programming language.
So is there such a book that is:
1. Not platform specific (especially not about an extinct/unused platform)
2. Remains high level - if low level stuff is explained it needs to be explained apart from the high level stuff - there is no need to detail endianness or how pointer works internally in the middle of a high level chapter for instance.
3. Contain plenty of interesting/sufficient challenging exercises (not trivial things like : Do the following calculation), ideally with corrections
4. Do not explain only the basics but also advanced topics on how to get fairly complex programs working in FORTH
5. Is available in either English or French, preferably French, but English is no major problem.