Est. 1994 Beginner

StarLogo

An educational, agent-based programming language from MIT that extends Logo to thousands of parallel "turtles" so learners can model decentralized systems and emergent behavior

Created by Mitchel Resnick, with Eric Klopfer and colleagues at the MIT Media Lab

Paradigm Educational, agent-based (massively parallel), procedural; an extension of Logo
Typing Dynamic
First Appeared 1994 (with prototype origins on the Connection Machine around 1990)
Latest Version StarLogo Nova (web-based, HTML5; 2.x line, latest documented stable release 2.1 in 2018)

StarLogo is an educational, agent-based programming language created at the MIT Media Lab to help students model and understand decentralized systems — the kind of complex, emergent behavior that arises when many simple agents interact without any central controller. Where the classic Logo language gave a learner a single “turtle” to command, StarLogo hands them thousands of turtles running the same instructions in parallel, plus a programmable grid of stationary “patches” that make up the world those turtles move through. The result is a tool designed less for writing conventional programs than for building living simulations of ant colonies, traffic jams, epidemics, and markets — and, in doing so, learning to think in a fundamentally different way about how the world works.

A note on dating

The encyclopedia metadata lists 1994 as StarLogo’s first-appearance year, and this page uses that date in its front matter. That year corresponds to MacStarLogo, the version that brought the language to personal computers and to a wide audience, and to the 1994 publication of Mitchel Resnick’s book Turtles, Termites, and Traffic Jams, which introduced StarLogo and its ideas to many readers. The language’s prototype origins are earlier still — roughly 1990 (approximate) — when Resnick first built StarLogo to run on the Connection Machine, a massively parallel supercomputer, as part of his research at the MIT Media Lab. To complicate matters, some references (including Wikipedia’s infobox) date StarLogo’s “first appearance” to 2001, the year of the cross-platform Java rewrite. These are all correct for different milestones; this page treats 1994 as the practical first-appearance year and notes the others in the timeline. Where an exact date is uncertain, it is flagged as approximate.

History & Origins

StarLogo grows directly out of the constructionist tradition at the MIT Media Lab, and out of Logo itself. Logo — co-created by Seymour Papert, Wally Feurzeig, and Cynthia Solomon in the late 1960s — was built on the premise that children learn most deeply by building things, and its famous turtle gave young programmers a concrete, embodied way to explore geometry and computation. Papert was Resnick’s mentor at the Media Lab, and StarLogo can be read as an attempt to carry Logo’s ideas into a new territory: not the behavior of one turtle, but the collective behavior of many.

Mitchel Resnick designed the original StarLogo around 1990 (approximate) to run on the Connection Machine, a supercomputer built for massively parallel computation. The parallel hardware was a natural fit for the central idea — thousands of independent agents each executing the same simple rules at the same time. As personal computers grew more capable, the language was brought to the Macintosh as MacStarLogo (1994, now known as MacStarLogo Classic), and later reimplemented as a cross-platform Java application (the 2.x line, around 2001). Development of the language and its descendants has continued under Resnick and, especially, Eric Klopfer at the MIT Scheller Teacher Education Program (STEP Lab), with Daniel Wendel among the leads on the modern web-based edition.

Design Philosophy

StarLogo exists to teach a specific and surprisingly difficult idea: that orderly, complex patterns can emerge from the bottom up, with no one in charge. People tend to reach for centralized explanations — a leader ant directing the colony, a lead bird steering the flock — when the reality is decentralized and self-organizing. Resnick called the goal helping learners overcome the “centralized mindset.” Everything about the language serves that pedagogy:

  • Massively parallel by default. You do not write a loop over agents; you write a rule, and every turtle runs it simultaneously. This makes decentralized behavior the path of least resistance rather than an advanced technique.
  • Turtles and patches. Mobile turtles (the agents) live on and interact with a grid of stationary patches (the environment). Patches can hold state — food, pheromone, temperature — so the world itself participates in the simulation.
  • Low floor, high ceiling. Following Logo’s philosophy, StarLogo is meant to be approachable for a beginner (a “low floor”) while still supporting rich, sophisticated models (a “high ceiling”).
  • Learning by modeling. The point is not to produce software but to build a model, watch what emerges, form a hypothesis about why, and revise — a scientific loop made tangible.

Key Features

  • Thousands of concurrent agents. Turtles all execute the same code in parallel, making emergent, collective phenomena easy to express and observe.
  • Programmable environment. Patches are first-class: they store and update local values, enabling stigmergy (agents coordinating indirectly through the environment, as ants do with pheromone trails).
  • Logo-derived commands. Movement and drawing primitives inherited from Logo (forward, right, left, pen commands) keep the language familiar to anyone who has met the turtle before.
  • Real-time visualization. Simulations render live, so learners see patterns form, break, and stabilize as they tweak the rules.
  • Block-based programming (modern versions). StarLogo TNG and StarLogo Nova replace typed syntax with drag-and-drop blocks, lowering the barrier for younger students and reducing syntax errors.
  • 3D worlds (modern versions). TNG and Nova add a 3D environment, letting simulations double as simple games and richer visual models.

Evolution

StarLogo has evolved through a family of distinct implementations, each broadening its reach:

VersionApprox. yearPlatformStatus
Original StarLogo~1990Connection Machine (parallel supercomputer)Historical
MacStarLogo (Classic)1994MacintoshLegacy / archived
StarLogoT1997Macintosh (Uri Wilensky, Tufts)Legacy; led to NetLogo
StarLogo (Java 2.x)~2001Java (Windows, macOS)Legacy
StarLogo TNG2008 (1.0)Java desktop app, blocks-based 3DArchived / superseded
StarLogo Nova2014 beta → 2.x (HTML5; 2.1 in 2018)Web browserActive / current

Two branches are worth separating. One is the official MIT line — from the original through the Java version, then StarLogo TNG (2008), which introduced the 3D, block-based interface, and finally StarLogo Nova (2014), which moved everything into the web browser. MIT now describes TNG as the archived predecessor to Nova, which is the current, maintained offering.

The other branch is the influential detour through StarLogoT (1997), an enhanced Macintosh version built by Uri Wilensky. StarLogoT became the direct ancestor of NetLogo (1999), which grew into what is often called the most widely used agent-based modeling environment in both education and research. The lineage — StarLogo → StarLogoT → NetLogo — is a notable case of an educational tool seeding a serious research platform.

Current Relevance

StarLogo is very much alive, in the form of StarLogo Nova, a free, browser-based environment maintained by the MIT STEP Lab and hosted at slnova.org. Running entirely in the browser means there is nothing to install, which suits its target audience of upper-elementary through high-school classrooms; it supports 3D model import and project sharing, and it underpins curricula such as Project GUTS (Growing Up Thinking Scientifically) and the associated Teachers with GUTS network. The current documented line is the HTML5-based 2.x generation, whose latest documented stable release is 2.1 (reportedly from late 2018); the project has apparently continued to receive maintenance since then, though release dates beyond 2.1 are not well documented. A further 3.0 has been discussed but is not confirmed as a public release, so it is left out here.

Beyond StarLogo’s own descendants, its intellectual footprint is largest through NetLogo, which carried the turtles-and-patches model into thousands of research papers and university courses on complex systems, ecology, economics, and social science.

Why It Matters

StarLogo’s importance is out of proportion to its size. It took a beautiful pedagogical idea from Logo — learning by building — and pointed it at one of the genuinely hard concepts in science: how decentralized, self-organizing systems produce order without a controller. By making parallelism the default and giving the environment its own programmable life, it let students feel emergence rather than just read about it. That approach seeded an entire family of tools, most consequentially NetLogo, and helped establish agent-based modeling as something you can teach a twelve-year-old and also use to publish research. For a language that began on a Cold War-era supercomputer and now runs in a web browser, StarLogo’s throughline has stayed remarkably constant: help people think, more clearly and more honestly, about how complicated things emerge from simple ones.

Timeline

1990
Mitchel Resnick develops the original StarLogo at the MIT Media Lab, running on the Connection Machine, a massively parallel supercomputer (date approximate)
1994
MacStarLogo brings the language to the Macintosh; Resnick publishes Turtles, Termites, and Traffic Jams (MIT Press), which popularizes StarLogo and decentralized thinking
1997
Uri Wilensky releases StarLogoT, an enhanced Macintosh version, while at Tufts University
1999
NetLogo is created by Uri Wilensky, growing directly out of StarLogoT and becoming a widely used agent-based modeling environment
2001
A cross-platform, Java-based StarLogo (the 2.x line) is released, running on Windows and Macintosh (date approximate)
2008
StarLogo TNG (The Next Generation) 1.0 is released, adding a 3D OpenGL world and a block-based graphical programming interface
2014
StarLogo Nova launches in beta, moving the blocks language and 3D engine into the web browser
2018
StarLogo Nova is rebuilt on HTML5/JavaScript (the 2.x line), replacing the earlier Adobe Flash implementation; version 2.1 is the latest documented stable release

Notable Uses & Legacy

Project GUTS / Teachers with GUTS

Growing Up Thinking Scientifically uses StarLogo Nova to teach middle-school students computer science and complex-systems modeling through agent-based simulations

K–12 STEM classrooms

Teachers use StarLogo to let students build and explore models of emergent phenomena such as ant foraging, traffic jams, disease spread, and predator-prey dynamics

MIT Scheller Teacher Education Program (STEP Lab)

Develops and maintains StarLogo TNG and StarLogo Nova as tools for constructionist learning and research into how students reason about decentralized systems

Complex-systems and decentralized-thinking education

Rooted in Resnick's research, StarLogo is used to help learners move past centralized, single-leader explanations toward understanding self-organizing, bottom-up behavior

Game and simulation design in the classroom

StarLogo TNG's blocks-based 3D environment lets students design simple games and interactive simulations while learning programming fundamentals

Language Influence

Influenced By

Influenced

StarLogoT NetLogo

Running Today

Run examples using the official Docker image:

docker pull
Last updated: