Logo
Educational language known for turtle graphics
Logo is an educational programming language, developed in 1967 by Wally Feurzeig, Seymour Papert, and colleagues, best known for its "turtle graphics" system in which learners issue simple commands to move a graphical or robotic turtle and…
Definition
Logo is an educational programming language, developed in 1967 by Wally Feurzeig, Seymour Papert, and colleagues, best known for its "turtle graphics" system in which learners issue simple commands to move a graphical or robotic turtle and draw shapes on screen. It was designed specifically to make abstract programming and mathematical concepts, like geometry, recursion, and procedural thinking, tangible for children by giving immediate, visual feedback to every command.
Overview
Logo was created in 1967 by a team including Wally Feurzeig and Seymour Papert at Bolt, Beranek and Newman, drawing directly on Papert's constructionist learning theory, which held that children learn best by actively building and debugging their own models and constructs rather than passively receiving instruction. Papert had studied under Jean Piaget and applied Piaget's ideas about developmental learning to argue that programming itself, done right, could become a powerful tool for teaching general problem-solving and mathematical thinking to children. Mechanically, Logo's most recognizable feature is turtle graphics: a small cursor, the turtle, that responds to simple movement and rotation commands like `forward 100` or `right 90`, tracing a line as it moves and letting learners build up complex shapes and patterns from simple sequences of commands. The turtle could originally be a physical floor robot as well as an on-screen graphic, reinforcing the connection between code and physical, observable action. Beyond graphics, Logo is a full, list-processing language in the Lisp tradition, supporting variables, recursion, and user-defined procedures, which let more advanced learners build genuinely complex programs once they outgrew basic turtle commands. Logo sits at the root of the educational-programming-language lineage that later produced Scratch, the block-based visual language developed decades later at MIT, which inherited Logo's emphasis on immediate visual feedback and beginner-friendly abstraction while replacing typed syntax with draggable blocks. Compared to general-purpose languages taught to beginners today, like Python, Logo trades broad practical applicability for a design purpose-built around pedagogy and visual, incremental learning. In practice, Logo was widely used in schools, particularly in the 1980s, as computers first entered classrooms, often paired with physical turtle robots that would draw on paper as they moved, giving programming concepts a hands-on, tactile dimension. Many variants and descendants emerged, including Logo Writer, MicroWorlds, and, more distantly, NetLogo, a language for agent-based modeling and simulation that adapted Logo's approachable syntax for scientific computing rather than classroom introduction. Logo's practical limitations are tied to its educational focus: it was never intended as a general-purpose production language, and its ecosystem, libraries, and modern tooling are minimal by design. Its influence, however, persists strongly in how introductory programming is taught today, with turtle-graphics-style modules built into Python's standard library and visual languages like Scratch carrying Logo's pedagogical philosophy forward into current classrooms. Logo's lasting contribution is less any specific syntax than a demonstrated design pattern: give a learner a small, controllable agent, let every command produce visible, immediate feedback, and abstract concepts like iteration and recursion become something a beginner can see rather than merely read about.
Key Features
- Turtle graphics system for visual, command-driven drawing
- Rooted in Seymour Papert's constructionist learning theory
- Full list-processing language in the Lisp tradition underneath
- Support for recursion, variables, and user-defined procedures
- Original physical floor-robot turtles alongside on-screen graphics
- Direct pedagogical ancestor of MIT's Scratch visual language
- Immediate visual feedback designed for teaching abstract concepts
- Descendant dialects including Logo Writer, MicroWorlds, and NetLogo