  Some approaches to increasing program reliability involve a disciplined use
of programming languages so as to minimise the hazards introduced by
error-prone features. This is realised by writing code that is constrained to a
subset of the a priori admissible programs, and that, moreover, may use only a
subset of the language. These subsets are determined by a collection of
so-called coding rules.
