Application specific design patterns and the integration of Batory's work with Demeter.
Visitors are one kind of executable application specific design pattern.
This pattern describes a collaboration between a set of recordable classes in which certain events are forwarded to a journal class for recording. The way the recordable classes and the journal are connected is left open by the pattern. Both may be parameterized by strategies. An adjuster modifies a group of classes permanently and is used outside the scope of a strategy. A visitor also modifies a group of classes but the modifications are only felt during some traversal.