Logo is a type of programming microworld that emerged in the mid-1960s. It was created by Wally Feurzeig and Seymour Papert.
The Logo language was not designed with the principal aim to teach programming. Its learning environments articulate the principle that giving people personal control over powerful computational resources can enable them to establish intimate contact with profound ideas from science, from mathematics, and from the art of intellectual model building.
However, this did not happen. Logo wound up being "just" the first programming language taught to children. In many places (e.g. the Geneva school system) Logo teaching is now replaced by less interesting objectives such as making web pages :(
Certainly, logo did not hold up its promise as unguided exploratory learning environment. Years of LOGO practice has shown that the scenarization work by the 'teacher' determines the learning outputs. His role is to set up a environment which will provide optimal learning conditions for a given student, at a given time. Moreover, at some stages, he has to give an advice on a particular point.
Logo was particularly distinguished from other programming languages by its use of turtle geometry. Users, as young as preschoolers, successfully learned to communicate with an object called a “turtle,” commanding it to move around the screen or on the floor using commands such as FORWARD, BACK, LEFT, and RIGHT. As the turtle moved, it could leave a trail, thus combining the user’s control of the computer with geometry and aesthetics. Logo was deliberately designed to map onto a child’s own bodily movements in space. By encouraging children to “play turtle,” thousands of children learned to control the turtle successfully in this way.
There are over 130 implementations and dialects, some extinct, some open source or free (or both), some commercial.
Later, Logo was interfaced with LEGO bricks (although later Lego decided to use an other language in the commercial LEGO Mindstorms products. An interface also exists for Crickets hardware.
Most recent developments (e.g. in the MIT Media Lab) include augmented reality, ubiquitous computing, etc. in their designs.
One popular recent implementation, NetLogo, has been designd for various types of simulations, e.g. similar to AgentSheets or dynamic simulation models that you may find in general purpose environments like Freestyler.
See also: Microworlds