Wollok is a programming language and environment for teaching OOP. It is currently under active development.

It takes away syntax complexity and focus on objects, messages and polymorphism.

It features objects as first class citizens in order to start programming OOP without the need of classes (and its complexity). But it also supports classes, simple inheritance and mixins (multiple inheritance by linearization).

Wollok also has an optional type-system with type inference, aiming to be as much implicit as one can :)

Although Wollok can be used from a command line, the full experience to teach and learn OOP is based on an IDE with: tests cases support, autocomplete, syntax-highlight and many static code checks (plus quick fixes)

For more information visit https://github.com/uqbar-project/wollok and http://www.wollok.org/