Oz

A multi-paradigm language, Oz is mostly used for teaching programming. It contains most of the aspects you’d find in the most popular programming paradigms, such as logic, functional, imperative, object-oriented, and concurrent programming. This, in combination with its simple semantics, make Oz a great educational alternative. 

Oz is a multiparadigm programming language, developed in the Programming Systems Lab at Université catholique de Louvain, for programming language education. It has a canonical textbook: Concepts, Techniques, and Models of Computer Programming.