This page strives to document a number of design patterns used with Forth. There are basically two kinds of Forth DesignPatterns:
Design patterns present an alternative to code re-use: idea re-use. ChuckMoore has strongly desired a documentation/publication standard for exchanging Forth programs between different systems. While example code might be provided for GForth, an ANSI Forth implementation, the idea is generic and documented well enough to be implemented on any Forth environment – including colorForth.
ForthDesignPatterns are not limited to expressions in the code. Because of Forth's high degree of malleability, it is hard to say what is application code, what is system code, and what is programmer philosophy. So, a hypothetical EditTimeTokenization and AsciiSourceRepresentation patterns are just as valid as, say, Command or Model-View-Controller patterns.
Many of these patterns that have been catching on in the ExtremeProgramming movement have been known about and used in the Forth community for decades, especially many of the refactoring patterns, precepts encouraging simplicity and avoiding over-generalization.