Claire

A multi-paradigm programming language, supporting logic, functional, imperative, object-oriented and collection-oriented (set-based) programming styles, with few simple and well-understood concepts, such as objects, functions, rules and versioning for building search trees.