A ``Patterns Handbook Language'' combines loosely coupled, general patterns. The patterns, and the language itself, captures expertise in a problem or solution domain. (Compare with PrescriptivePatternLanguage.)
Because ``handbook'' patterns are so abstract, the elements of AlexandrianForm (motivation, context, examples, etc.) are important.
Examples:
The GangOfFour DesignPatterns book[1].
The patterns handbook being published by Siemens[2].
JimCoplien's ``Advanced C++'' book[3] (arguably ``just'' ProgrammingIdioms).
I feel that, to be a pattern language at all, the patterns must work together just as the grammatical constructs of a natural language work together to form literary works. I perceive a (weakly) established distinction between a PatternCatalog and a PatternLanguage. A PatternCatalog assembles largely disjoint patterns; a PatternLanguage weaves related patterns together.
JimCoplien's ``Advanced C++'' contains idioms. Idioms are language-specific (low-level?) patterns (KindsOfPatterns). However, ``Advanced C++'' may be neither a PatternCatalog nor a PatternLanguage, as it is organized around the abstracting principles of the language, not around the idioms themselves.
This page mirrored in WikiPagesAboutWhatArePatterns as of April 29, 2006