The Clump language proposes a natural evolution of the basic Object-Oriented paradigm revisiting the duality existing between the data and the knowledge. This implies a design based on Class-Oriented and Pattern-Oriented approaches in a same language
...It produces classes for abstract syntax trees in compiler frontends from simple and compact specifications. Generated classes have builtin support for the Visitor designpattern.