DPL is a design pattern language intending to describe design patterns in some minimum instructions set.
It is an alternative to using UML to describe design patterns; moreover, it can be used to search into some .NET code existing patterns, and also to propose refactoring based on those found patterns.