What is Smalltalk?

Smalltalk is purely object-oriented, reflexively and implicitly typed, and completely open.

This means that Smalltalk allows a completely different kind of programming than other OO languages derived from procedural languages such as C. Whoever programs in Smalltalk becomes a part of the system and programs from the inside. There is no separation between the development environment and the program - this is an experience that no other programming language can offer.