The Logo Programming Language and How Visualization of Computation Supports the Exploration of Complexity

Catherine Griffiths
12 min readMay 30, 2017

--

Introduction

This short review will look at a nexus in the field of computational visualization to identify some of the ways that visualization supports literacy, comprehension, and exploration of advanced ideas in mathematics, simulation, and thinking, by people who do not have a science training.

The problem being addressed

Advanced ideas in the fields of mathematics and computation are abstract and difficult to comprehend, indeed, we live in times of computational obscurantism where increasingly larger and more crucial aspects of society are becoming governed by computational systems and algorithms, whilst the public’s access to and literacy of such ideas are equally obstructed due to the proprietary form of black box algorithms, and the perplexing and abstruse nature of the core ideas. However, there have been several important drives to simplify and explicate computation and support broader access to the field by non-technical people. The authors, whose works are reviewed in this paper, all came from distinguished backgrounds in Mathematics and chose to dedicate their work to understanding how programming is related to the literacy of fundamental ideas in mathematics and other science fields, and how it can support children and non-technical adults to understand the world around them. The Logo programming language was developed in order to provide access, it was motivated by the desire to empower people to engage with computational language. Likewise, complex adaptive systems are also fundamentally difficult to understand, and are naturally counter-intuitive, and Mitchel Resnick’s work was aimed at developing literacy and access to this space, staking a direct relation between developing a new literacy and guiding a broader public toward the comprehension of complex systems.

The works selected to review are Mindstorms: Children, Computers and Powerful Ideas, by Seymour Papert, first published in 1980 and addressing the invention of the Logo programming language, a platform created to support the teaching and learning of computational ideas. Turtle Geometry: The Computer as a Medium for Exploring Mathematics, by Harold Abelson and Andrea A. diSessa, published in 1981, to explore how Logo could be used as an alternative paradigm to explore advanced geometry. Turtles, Termites and Traffic Jams: Explorations in Massively Parallel Microworlds, by Mitchel Resnick, published in 1994, deals with complex adaptive systems, and the implementation of the StarLogo programming language to address the phenomenon of emergence.

Key questions

What was the cultural context in which the Logo programming language was developed and what was its intention? What are the specific affordances of Logo and Turtle Geometry? How does visualization enable, not just comprehension, but also the exploration of advanced concepts? Based on the StarLogo programming language, how does visualization enable a literacy of complex adaptive systems, and decentralized thinking?

A chronological timeline

1967 Logo, an educational programming language was designed by Wally Feurzeig, Seymour Papert, and Cynthia Solomon.

1969 Turtle Graphics were implemented into Logo by Papert to support the concept of the robotic turtle that had already been developed in artificial intelligence research.

1980 Mindstorms was first published.

1981 Turtle Geometry was published.

1985 StarLogo, was first implemented at MIT Media Lab,

1994 Turtles, Termites, and Traffic Jams was published.

Mindstorms: Children, Computers and Powerful Ideas

Mindstorms, is a seminal work in which Papert explores the legacy and potential of the Logo programming language that he co-developed in 1967 as a means of changing childhood mathematics education. Logo is an educational programming language, based on LISP, that was conceived to teach the fundamental concepts of programming and mathematics. Its most prominent feature is referred to as Turtle Graphics, which teaches children the fundamentals of mathematics, by learning how to navigate a turtle icon across the computer screen to create shapes, using commands such as ‘FORWARD 100’ and ‘RIGHT 90’ to move and change the direction of the turtle, and ‘PENUP’ and ‘PENDOWN’ to make the turtle leave a trace or line drawing behind it. The turtle metaphor was borrowed from research already being conducted at MIT in artificial intelligence, in which a small robotic turtle could be programmed to navigate physical space. For Papert this was a new means for children to learn “a language for talking about shapes and fluxes of shapes, about velocities and rates of change, about processes and procedures. They are learning to speak mathematics and acquiring a new image of themselves as mathematicians”. (p.3)

Papert reflects on the cultural context of the time, one in which computers were still expensive and a rarity, and whilst they were certainly not a common household appliance yet, they were being slowly taken up by schools to support childhood learning. In spite of this, there was a skepticism about what effect such a new technology would have in the classroom: would it alienate children from learning and from each other, would it effectively lead to computers programming children in their learning? Whilst these concerns proved to be false, Papert describes the deeper cultural issues that did obstruct people’s ability to engage with mathematics, and which Logo was specifically designed to overcome.

“It is about an end to the culture that makes science and technology alien to the vast majority of people. Many cultural barriers impede children from making scientific knowledge their own. Among these barriers the most visible are the physically brutal effects of deprivation and isolation. Other barriers are more political. Many children who grow up in cities are surrounded by the artifacts of science but have good reason to see them as belonging to “the others”; in many cases they are perceived as belonging to the social enemy. (…) Most branches of the most sophisticated modern culture of Europe and the United States are so deeply “mathophobic” that many privileged children are as effectively (if more gently) kept from appropriating science as their own.” (p.4)

Mindstorms projects an empowering vision of how when a child programs a computer they are given access to and intimacy with some of the most powerful ideas in technology and the deepest ideas in science and mathematics. Papert understood that computers can support the development of new ways of thinking and learning, and should not be seen to simply instruct and deliver information, but to revitalize education, so that children learn through exploration, experimentation, and expressing themselves, and that this new type of learning could support the way they learn other subjects, even without the use of a computer. Papert was influenced by the psychologist and child development pioneer, Jean Piaget, whose concept of childhood learning was formulated as “children as builders of their own intellectual structures” (p.7), and was extended by Papert into the concept of the turtle as “a constructed computational object-to-think-with”, emanating from his own experience of playing with toys gears as a child and how that supported his engagement with abstract concepts.

Turtle Geometry: The Computer as a Medium for Exploring Mathematics

In Turtle Geometry, Abelson and diSessa extend the practice of Logo and the Turtle concept, to support the exploration of mathematics, specifically advanced geometry, at undergraduate level. Their claim is that it is rare for a student to get the chance to approach mathematics by doing it rather than only learning about it through the rote revision of proofs and theorems. Turtle geometry is about giving students an experiential access and agency to advanced mathematical concepts “to dissolve the barriers to the production of knowledge” (p.xiii), and less about using the computer to instruct and deliver information, as was the tendency when computers were first introduced. Turtle geometry is set up as an alternative framework for learning about mathematics, one that is in contrast to the traditional framework conceived in Rene Descartes conception of coordinate geometry in the 17th century.

“Indeed, Descartes’ marriage of algebra and geometry is one of the fundamental insights in the development of mathematics. Nevertheless, these kinds of coordinate systems — Cartesian, polar, or what have you — are not the only ways to relate numbers to geometry. (…) We shall refer to the geometry of FORWARD and RIGHT as turtle geometry.” (p.11)

Several of the affordances of turtle geometry are outlined as being intrinsic rather than extrinsic, whereby the turtle does not rely on an external reference system such as the x and y axes. Turtle geometry is also described as local rather than global, meaning that it deals with geometry by only needing to know small pieces of information, such as its own position and heading, rather than its context in a wider system, or in relation to other more abstract information, such as the center or the edges of its environment, which is in contrast to the algebraic equations of a global coordinate system. Another important attribute of turtle geometry is through the construction of procedures rather than equations. Procedures are simple, readily modified, and called iteratively, enabling fruitful mathematical exploration, something which is more difficult to capture in traditional algebraic formalism. Turtle geometry is also considered to be dynamic, rather than the traditional view of geometry that is regarded as static. The concept of the ‘state’ in computer science is important as turtle geometry is tied to movements and its main procedures, FORWARD, BACK, LEFT , RIGHT, are state-change operators.

Overall, these qualities mean that turtle geometry is a less abstract, and more embodied approach to learning, or perhaps, an embodied approach to dealing with abstraction, by breaking abstraction down into simple repeatable behaviours that people can relate to through existing knowledge of their own bodies in space and motion. In fact, several times Abelson and diSessa include humorous but pertinent warnings to their reader:

“DANGER — The next section contains “premade” (already discovered) mathematics. It may be harmful to your imagination and should be used only as a last resort. TURN THE PAGE AT YOUR OWN PERIL.” (p.267)

In the following section, the book lays out several mathematical theorems and proofs, which are provided with the advisement to be cautious of any attempt to learn mathematics from existing knowledge, which can only be consumed. In this way, the book provides a way to not just learn about, but to explore and investigate by practicing, advanced ideas from artificial intelligence and how sight and smell are simulated, biological systems of animal behaviours, game theory, and even Einstein’s Theory of General Relativity — all through the navigation of a single turtle icon and simple procedural instructions.

Turtles, Termites and Traffic Jams: Explorations in Massively Parallel Microworlds

While Papert developed ideas of how technology can be linked to cognition, literacy and learning, Resnick takes this further by developing a thesis of how a new kind of thinking and intuition in science can emerge from computational literacy. Intuition is an important concept here because it is rarely associated with mathematics and science. What Resnick makes abundantly clear, is that many systems in the natural world operate on very simple rules that are executed in a distributed manner. These systems are defined as complex adaptive systems, where many individual agents take local decisions which leads the overall system to create emergent behavior or collective intelligence, another way to describe this is that from seeming disorder, self-organisation result. Such systems might be non-intuitive for the human mind, which struggles to keep track of a large amount of independent actors, and this is where the role of computation becomes crucial. For Resnick, it is possible to grasp an understanding of such complex systems in the form of computer simulations, and this led to the development of the StarLogo programming language, which advances on the original Logo language specifically to enable the modelling, simulation, and thus exploration of complex systems and complexity theory, by using an agent based modelling approach. Where in Logo, a user directs a single Turtle in order to understand certain concepts; in StarLogo, a user creates rule sets, or procedures to simulate thousands of turtles simultaneously, to understand how emergent phenomena takes place from a seemingly disordered environment. This is where the book draws its subtitle: massively parallel microworlds.

StarLogo is a software that allows the study of complex systems by using an agent based modelling approach. The main examples that the book presents are in the way that slime molds form as a single-celled organism without a central ‘brain’, and how the simulation of ant colonies and termites exist without a hierarchy or leader. While there might be better tools to explore and engineer complex systems, Resnick’s primary contribution is that of accessibility to support literacy amongst children, or people who are new to programming, to explore the close relationship between computational literacy and the kind of counter-intuitive knowledge that complex systems and StarLogo can provide. Resnick envisions that by using tools such as StarLogo, we could begin to look at the world with different eyes, with a type of computational curiosity that can easily foster exploration and even the development of new theories of why complex behavior emerges. Resnick claims that computational literacy enables decentralized thinking, and accessibility to addressing complex adaptive systems, one that is based less on the consumption of content but much closer to the tinkering and simulation approach that Papert originally advocated. However, Resnick takes this further to raise a more important argument about the nature of complexity in our society. Resnick connects the original model of computation, often referred to as ‘von Neumann architecture’ after its creator, as one that was founded on a single central processing unit, and is a manifestation of “the models and metaphors of Newtonian physics [that] have dominated the world of science”. (p.12) The Newtonian worldview is mechanistic, often signified through representations of clocks, gears, and analogue machines. “Newton’s universe is ruled by linear cause and effect — one gear turns, which makes a second gear turn” (p.12) which presents a view of one object being in control, and driving everything else, however this does not account for any reaction from within the system, any feedback. Complex systems are thus presented as a necessary paradigm shift from the Newtonian model of understanding phenomena:

“The point is not that Newtonian models are wrong. It is that Newtonian models are inappropriate for trying to make sense of certain types of phenomena. New types of models are needed, operating at a different ‘level’ from Newtonian models, focusing on the behaviors of systems, not the actions of individuals.” (p.13)

Complex systems offer a decentralized view of phenomena, by studying how complex patterns emerge from interactions of simple components, emergent qualities can be explored that bring us closer to understanding some of the issues faced in the late 20th and early 21st centuries. In the context of computation, where central processing units in computers once directed all information flow through a single processor, complexity theory leads to parallel processing systems that can give rise to massive agent simulations, and a decentralized approach to problem-solving and exploration at the computational level.

Conclusion leading to new research questions

In Mindstorms, Papert lays out the context in which the Logo programming language was conceived — a science education curriculum which favoured consuming information over exploring new ideas, and a lack of access to engaging with advanced ideas in mathematics and science. Logo was born to provide this a means for children to become computationally literate and overcome societies “mathophobia”. It has been 36 years since its development and it is clear that many of the computational and educational portals that we have today, such as the Processing platform, the Kahn Academy, the plethora of MOOCs, and various other programming languages written with children in mind, demonstrate the success of Logo’s legacy. However, computational technology and culture has also burgeoned over the last 36 years, and it has become more vastly more complex and inaccessible to the extent that one could argue that society is further away from a computational literacy as it is manifested today. The question that emerges here is how can computational literacy overcome this gap, not just in children, but in adults also? And what role can the visual play in this maneuver?

This connects to a similar gap in the ideas put forward by Resnick, which talk about the need to shift from the Newtonian model to a complex systems model of thinking and investigating. Turtles, Termites, and Traffic Jams was published in the mid-90s, and StarLogo was conceived in the mid-80s, and uses the now familiar concepts of the ant colony and slime mold growth as a way to communicate and visualize how complex systems work. Today, the discussion around complex systems still appears to focus on the same phenomena, and has not evolved to meet the needs of the day, which are centered around ecology, economic growth and crashes, political campaigns and resistance movements, artificial intelligence, and the phenomenon of information circulation such as news and fake news. These are the pertinent issues that only an understanding of complex systems can support.

Whilst the three books under review in this paper all address computational literacy through the Logo programming language, which implemented a turtle icon to support visualization and embodied thinking of abstract scientific concepts, Logo remains a syntactical language at its core. We have already arrived at code as a medium, accepted alongside traditional mediums of film and music, however, the question remains, how can we move toward computational visualization as a medium, where code syntax is not required, or will this entail a reduction in too-important information?

References

Books:

Abelson, Harold and diSessa, Andrea A. Turtle Geometry: The Computer as a Medium for Exploring Mathematics. 1981, MIT Press

Papert, Seymour. Mindstorms: Children, Computers and Powerful Ideas, Second Edition 1993 (originally published 1980), Basic Books

Resnick, Mitchel. Turtles, Termites, and Traffic Jams: Explorations in Massively Parallel Microworlds, 1994, MIT Press

Programming Languages:

Feurzig, Wally. Papert, Seymour. Solomon, Cynthia. Logo, 1967, Bolt, Beranek and Newman

Resnick, Mitchel. StarLogo, 2008, MIT Media Lab

--

--

Catherine Griffiths

Artist + Researcher working on the ethics of algorithms and critical software projects. Assistant Professor at the University of Michigan. www.isohale.com