HOME

TheInfoList



OR:

Logo is an
educational programming language An educational programming language is a programming language that is designed mostly as an instrument for learning, and less as a tool for writing programs to perform work. Types of educational programming languages Assembly languages Orig ...
, designed in 1967 by Wally Feurzeig,
Seymour Papert Seymour Aubrey Papert (; 29 February 1928 – 31 July 2016) was a South African-born American mathematician, computer scientist, and educator, who spent most of his career teaching and researching at MIT. He was one of the pioneers of artificial ...
, and Cynthia Solomon. ''Logo'' is not an acronym: the name was coined by Feurzeig while he was at Bolt, Beranek and Newman, and derives from the Greek ''logos'', meaning ''word'' or ''thought''. A general-purpose language, Logo is widely known for its use of
turtle graphics In computer graphics, turtle graphics are vector graphics using a relative cursor (the "turtle") upon a Cartesian plane (x and y axis). Turtle graphics is a key feature of the Logo programming language. Overview The turtle has three attribute ...
, in which commands for movement and drawing produced line or
vector graphics Vector graphics is a form of computer graphics in which visual images are created directly from geometric shapes defined on a Cartesian plane, such as points, lines, curves and polygons. The associated mechanisms may include vector displ ...
, either on screen or with a small robot termed a
turtle Turtles are an order of reptiles known as Testudines, characterized by a special shell developed mainly from their ribs. Modern turtles are divided into two major groups, the Pleurodira (side necked turtles) and Cryptodira (hidden necked t ...
. The language was conceived to teach concepts of programming related to
Lisp A lisp is a speech impairment in which a person misarticulates sibilants (, , , , , , , ). These misarticulations often result in unclear speech. Types * A frontal lisp occurs when the tongue is placed anterior to the target. Interdental lispin ...
and only later to enable what Papert called " body-syntonic reasoning", where students could understand, predict, and reason about the turtle's motion by imagining what they would do if they were the turtle. There are substantial differences among the many dialects of Logo, and the situation is confused by the regular appearance of turtle graphics programs that are named Logo. Logo is a
multi-paradigm Programming paradigms are a way to classify programming languages based on their features. Languages can be classified into multiple paradigms. Some paradigms are concerned mainly with implications for the execution model of the language, su ...
adaptation and dialect of Lisp, a
functional programming In computer science, functional programming is a programming paradigm where programs are constructed by applying and composing functions. It is a declarative programming paradigm in which function definitions are trees of expressions that ...
language.CSLS Vol 1, Preface .pxvi, Harvey 1997 There is no standard Logo, but
UCBLogo UCBLogo, also termed Berkeley Logo, is a programming language, a dialect of Logo, which derived from Lisp. It is a dialect of Logo intended to being a “minimum Logo standard.” It has the best facilities for handling lists, files, input/out ...
has the best facilities for handling lists, files, I/O, and
recursion Recursion (adjective: ''recursive'') occurs when a thing is defined in terms of itself or of its type. Recursion is used in a variety of disciplines ranging from linguistics to logic. The most common application of recursion is in mathematic ...
in scripts, and can be used to teach all computer science concepts, as
UC Berkeley The University of California, Berkeley (UC Berkeley, Berkeley, Cal, or California) is a public land-grant research university in Berkeley, California. Established in 1868 as the University of California, it is the state's first land-grant univ ...
lecturer Brian Harvey did in his ''Computer Science Logo Style'' trilogy.''Computer Science Logo Style'', Brian Harvey, MIT Press (3 volumes) , , . Availabl
online
Logo is usually an
interpreted language In computer science, an interpreter is a computer program that directly executes instructions written in a programming or scripting language, without requiring them previously to have been compiled into a machine language program. An interpre ...
, although compiled Logo dialects (such as Lhogho and Liogo) have been developed. Logo is not case-sensitive but retains the case used for formatting purposes.


History

Logo was created in 1967 at Bolt, Beranek and Newman (BBN), a
Cambridge, Massachusetts Cambridge ( ) is a city in Middlesex County, Massachusetts, United States. As part of the Boston metropolitan area, the cities population of the 2020 U.S. census was 118,403, making it the fourth most populous city in the state, behind Boston, ...
research firm, by Wally Feurzeig, Cynthia Solomon, and
Seymour Papert Seymour Aubrey Papert (; 29 February 1928 – 31 July 2016) was a South African-born American mathematician, computer scientist, and educator, who spent most of his career teaching and researching at MIT. He was one of the pioneers of artificial ...
. Its intellectual roots are in
artificial intelligence Artificial intelligence (AI) is intelligence—perceiving, synthesizing, and inferring information—demonstrated by machines, as opposed to intelligence displayed by animals and humans. Example tasks in which this is done include speech re ...
,
mathematical logic Mathematical logic is the study of formal logic within mathematics. Major subareas include model theory, proof theory, set theory, and recursion theory. Research in mathematical logic commonly addresses the mathematical properties of formal sy ...
and
developmental psychology Developmental psychology is the scientific study of how and why humans grow, change, and adapt across the course of their lives. Originally concerned with infants and children, the field has expanded to include adolescence, adult development, ...
. The first four years of Logo research, development and teaching work was done at BBN. The first implementation of Logo, called Ghost, was written in
LISP A lisp is a speech impairment in which a person misarticulates sibilants (, , , , , , , ). These misarticulations often result in unclear speech. Types * A frontal lisp occurs when the tongue is placed anterior to the target. Interdental lispin ...
on a
PDP-1 The PDP-1 (''Programmed Data Processor-1'') is the first computer in Digital Equipment Corporation's PDP series and was first produced in 1959. It is famous for being the computer most important in the creation of hacker culture at Massachuset ...
. The goal was to create a mathematical land where children could play with words and sentences. Modeled on LISP, the design goals of Logo included accessible power and informative error messages. The use of virtual
Turtles Turtles are an order of reptiles known as Testudines, characterized by a special shell developed mainly from their ribs. Modern turtles are divided into two major groups, the Pleurodira (side necked turtles) and Cryptodira (hidden necked t ...
allowed for immediate visual feedback and debugging of graphic programming. The first working Logo turtle robot was created in 1969. A display turtle preceded the physical floor turtle. Modern Logo has not changed very much from the basic concepts predating the first turtle. The first turtle was a tethered floor roamer, not
radio-control Radio control (often abbreviated to RC) is the use of control signals transmitted by radio to remotely control a device. Examples of simple radio control systems are garage door openers and keyless entry systems for vehicles, in which a small ...
led or
wireless Wireless communication (or just wireless, when the context allows) is the transfer of information between two or more points without the use of an electrical conductor, optical fiber or other continuous guided medium for the transfer. The most ...
. At BBN Paul Wexelblat developed a turtle named Irving that had touch sensors and could move forwards, backwards, rotate, and ding its bell. The earliest year-long school users of Logo were in 1968–69 at Muzzey Jr. High in
Lexington, Massachusetts Lexington is a suburban town in Middlesex County, Massachusetts, United States. It is 10 miles (16 km) from Downtown Boston. The population was 34,454 as of the 2020 census. The area was originally inhabited by Native Americans, and was fir ...
. The virtual and physical turtles were first used by fifth-graders at the Bridge School in the same city in 1970–71.


Turtle and graphics

Logo's most-known feature is the turtle (derived originally from a robot of the same name), an on-screen "
cursor Cursor may refer to: * Cursor (user interface), an indicator used to show the current position for user interaction on a computer monitor or other display device * Cursor (databases), a control structure that enables traversal over the records in ...
" that showed output from commands for movement and small retractable pen, together producing line graphics. It has traditionally been displayed either as a triangle or a turtle icon (though it can be represented by any icon). Turtle graphics were added to the Logo language by Seymour Papert in the late 1960s to support Papert's version of the turtle robot, a simple robot controlled from the user's workstation that is designed to carry out the drawing functions assigned to it using a small retractable pen set into or attached to the robot's body. As a practical matter, the use of turtle geometry instead of a more traditional model mimics the actual movement logic of the turtle robot. The turtle moves with commands that are relative to its own position, ''LEFT 90'' means spin left by 90 degrees. Some Logo implementations, particularly those that allow the use of concurrency and multiple turtles, support collision detection and allow the user to redefine the appearance of the turtle cursor, essentially allowing the Logo turtles to function as sprites. Turtle geometry is also sometimes used in environments other than Logo as an alternative to a strictly coordinate-addressed graphics system. For instance, the idea of turtle graphics is also useful in
Lindenmayer system An L-system or Lindenmayer system is a parallel rewriting system and a type of formal grammar. An L-system consists of an alphabet of symbols that can be used to make strings, a collection of production rules that expand each symbol into some ...
for generating
fractal In mathematics, a fractal is a geometric shape containing detailed structure at arbitrarily small scales, usually having a fractal dimension strictly exceeding the topological dimension. Many fractals appear similar at various scales, as il ...
s.


Implementations

Some modern derivatives of Logo allow thousands of independently moving turtles. There are two popular implementations:
Massachusetts Institute of Technology The Massachusetts Institute of Technology (MIT) is a private land-grant research university in Cambridge, Massachusetts. Established in 1861, MIT has played a key role in the development of modern technology and science, and is one of the m ...
's
StarLogo StarLogo is an agent-based simulation language developed by Mitchel Resnick, Eric Klopfer, and others at the Massachusetts Institute of Technology (MIT) Media Lab and Scheller Teacher Education Program in Massachusetts. It is an extension of the ...
and
Northwestern University Northwestern University is a private research university in Evanston, Illinois. Founded in 1851, Northwestern is the oldest chartered university in Illinois and is ranked among the most prestigious academic institutions in the world. Chart ...
Center for Connected Learning's (CCL)
NetLogo NetLogo is a programming language and integrated development environment (IDE) for agent-based modeling. About NetLogo was designed by Uri Wilensky, in the spirit of the programming language Logo, to be "low threshold and no ceiling". It teache ...
. They allow exploring
emergent phenomena In philosophy, systems theory, science, and art, emergence occurs when an entity is observed to have properties its parts do not have on their own, properties or behaviors that emerge only when the parts interact in a wider whole. Emergence ...
and come with many experiments in social studies, biology, physics, and other areas. NetLogo is widely used in agent-based simulation in the biological and social sciences. Although there is no agreed-upon standard, there is a broad consensus on core aspects of the language. In March 2020, there were counted 308 implementations and dialects of Logo, each with its own strengths. Most of those 308 are no longer in wide use, but many are still under development. Commercial implementations widely used in schools include '' MicroWorlds Logo'' and ''Imagine Logo''. Legacy and current implementations include:


First released in 1980s

* Apple Logo for the
Apple II Plus The Apple II Plus (stylized as Apple ] or apple plus) is the second model of the Apple II series of personal computers produced by Apple Computer. It was sold from June 1979 to December 1982. Approximately 380,000 II Pluses were sold during its ...
and Apple Logo Writer for the
Apple IIe The Apple IIe (styled as Apple //e) is the third model in the Apple II series of personal computers produced by Apple Computer. The ''e'' in the name stands for ''enhanced'', referring to the fact that several popular features were now built-in ...
, developed by Logo Computer Systems, Inc. (LCSI), were the most broadly used and prevalent early implementations of Logo that peaked in the early to mid-1980s. * Aquarius LOGO was released in 1982 on cartridge by Mattel for the Aquarius home computer. * Atari Logo was released on cartridge by Atari for the
Atari 8-bit family The Atari 8-bit family is a series of 8-bit home computers introduced by Atari, Inc. in 1979 as the Atari 400 and Atari 800. The series was successively upgraded to Atari 1200XL , Atari 600XL, Atari 800XL, Atari 65XE, Atari 130XE, Atari 800XE ...
. * Color Logo was released in 1983 on cartridge (26-2722) and disk (26-2721) by Tandy for the
TRS-80 Color Computer The RadioShack TRS-80 Color Computer, later marketed as the Tandy Color Computer and sometimes nicknamed the CoCo, is a line of home computers developed and sold by Tandy Corporation. Despite sharing a name with the earlier TRS-80, the Color Co ...
. * Commodore Logo was released, with the subtitle "A Language for Learning", by Commodore Electronics. It was based on MIT Logo and enhanced by Terrapin, Inc. The
Commodore 64 The Commodore 64, also known as the C64, is an 8-bit computing, 8-bit home computer introduced in January 1982 by Commodore International (first shown at the Consumer Electronics Show, January 7–10, 1982, in Las Vegas). It has been listed in ...
version (C64105) was released on diskette in 1983; the Plus/4 version (T263001) was released on cartridge in 1984. * ExperLogo was released in 1985 on floppy by Expertelligence Inc. for the
Macintosh 128K The Apple Macintosh—later rebranded as the Macintosh 128K—is the original Apple Macintosh personal computer. It played a pivotal role in establishing desktop publishing as a general office function. The motherboard, a CRT monitor, and a fl ...
. * Hot-Logo was released in the mid-1980s by EPCOM for the MSX 8-bit computers with its own set of commands in Brazilian Portuguese. * TI Logo (for the
TI 99/4A The TI-99/4 and TI-99/4A are home computers released by Texas Instruments in 1979 and 1981, respectively. Based on the Texas Instruments TMS9900 microprocessor originally used in minicomputers, the TI-99/4 was the first 16-bit home computer. T ...
computer) was used in primary schools, emphasizing Logo's usefulness in teaching computing fundamentals to novice programmers. * Sprite Logo, also developed by Logo Computer Systems Inc., had ten turtles that could run as independent processes. It ran on Apple II computers, with the aid of a Sprite Card inserted in one of the computer's slots. * IBM marketed their own version of Logo (P/N 6024076), developed jointly by Logo Computer Systems, Inc. (LCSI), for their then-new IBM PC. * ObjectLOGO is a variant of Logo with
object-oriented programming Object-oriented programming (OOP) is a programming paradigm based on the concept of " objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of pr ...
extensions and lexical scoping. Version 2.7 was sold by Digitool, Inc. It is no longer being developed or supported, and does not run on versions of the Mac operating system later than version 7.5. * Dr. Logo was developed by
Digital Research Digital Research, Inc. (DR or DRI) was a company created by Gary Kildall to market and develop his CP/M operating system and related 8-bit, 16-bit and 32-bit systems like MP/M, Concurrent DOS, FlexOS, Multiuser DOS, DOS Plus, DR DOS and G ...
and distributed in computers including the
IBM PCjr The IBM PCjr (pronounced "PC junior") was a home computer produced and marketed by IBM from March 1984 to May 1985, intended as a lower-cost variant of the IBM PC with hardware capabilities better suited for video games, in order to compete mor ...
, Atari ST and the
Amstrad CPC The Amstrad CPC (short for ''Colour Personal Computer'') is a series of 8-bit home computers produced by Amstrad between 1984 and 1990. It was designed to compete in the mid-1980s home computer market dominated by the Commodore 64 and the Si ...
. * Acornsoft Logo was released in 1985. It is a commercial implementation of Logo for the 8-bit
BBC Micro The British Broadcasting Corporation Microcomputer System, or BBC Micro, is a series of microcomputers and associated peripherals designed and built by Acorn Computers in the 1980s for the BBC Computer Literacy Project. Designed with an emphas ...
and
Acorn Electron The Acorn Electron (nicknamed the Elk inside Acorn and beyond) was a lower-cost alternative to the BBC Micro educational/home computer, also developed by Acorn Computers Ltd, to provide many of the features of that more expensive machine at a p ...
computers. It was developed for
Acorn Computers Acorn Computers Ltd. was a British computer company established in Cambridge, England, in 1978. The company produced a number of computers which were especially popular in the United Kingdom, UK, including the Acorn Electron and the Acorn Archi ...
as a full implementation of Logo. It features multiple screen
turtle Turtles are an order of reptiles known as Testudines, characterized by a special shell developed mainly from their ribs. Modern turtles are divided into two major groups, the Pleurodira (side necked turtles) and Cryptodira (hidden necked t ...
s and four-channel sound. It was provided on two 16kB ROMs, with utilities and drivers as accompanying software.


First released in 1990s

* In February 1990, ''Electron User'' published Timothy Grantham's simple implementation of Logo for the
Acorn Electron The Acorn Electron (nicknamed the Elk inside Acorn and beyond) was a lower-cost alternative to the BBC Micro educational/home computer, also developed by Acorn Computers Ltd, to provide many of the features of that more expensive machine at a p ...
under the article "Talking Turtle". * Comenius Logo is an implementation of Logo developed by Comenius University Faculty of Mathematics and Physics. It started development in December 1991, and is also known in other countries as SuperLogo, MultiLogo and MegaLogo. *Lego Logo is a version of Logo that can manipulate robotic
Lego Lego ( , ; stylized as LEGO) is a line of plastic construction toys that are manufactured by The Lego Group, a privately held company based in Billund, Denmark. The company's flagship product, Lego, consists of variously colored interlocking ...
bricks attached to a computer. It was implemented on the
Apple II The Apple II (stylized as ) is an 8-bit home computer and one of the world's first highly successful mass-produced microcomputer products. It was designed primarily by Steve Wozniak; Jerry Manock developed the design of Apple II's foam-mol ...
computing platform and was used in American and other grade schools in the late 1980s and early 1990s. Lego Logo is a precursor to Scratch. *
UCBLogo UCBLogo, also termed Berkeley Logo, is a programming language, a dialect of Logo, which derived from Lisp. It is a dialect of Logo intended to being a “minimum Logo standard.” It has the best facilities for handling lists, files, input/out ...
, also known as Berkeley Logo, is a free, cross-platform implementation of standard Logo last released in 2009. George Mills at MIT used UCBLogo as the basis for
MSWLogo MSWLogo is a programming language which is interpreted, based on the computer language Logo, with a graphical user interface (GUI) front end. It was developed by George Mills at the Massachusetts Institute of Technology (MIT). Its core is the sam ...
which is more refined and also free. Jim Muller wrote a book, ''The Great Logo Adventure'', which was a complete Logo manual and which used MSWLogo as the demonstration language. MSWLogo has evolved into
FMSLogo ''FMSLogo'' is a free implementation of a computing environment called Logo, which is an educational interpreter language. GUI and Extensions were developed by George Mills at MIT. Its core is the same as UCBLogo by Brian Harvey. It is free soft ...
.


First released from 2000 onwards

* aUCBLogo a rewrite and enhancement of
UCBLogo UCBLogo, also termed Berkeley Logo, is a programming language, a dialect of Logo, which derived from Lisp. It is a dialect of Logo intended to being a “minimum Logo standard.” It has the best facilities for handling lists, files, input/out ...
. * Imagine Logo is a successor of Comenius Logo, implemented in 2000. The English version was released by Logotron Ltd. in 2001. * LibreLogo is an extension to some versions of LibreOffice. Released in 2012, it is written in
Python Python may refer to: Snakes * Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia ** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia * Python (mythology), a mythical serpent Computing * Python (pr ...
. It allows vector graphics to be written in Writer. * Logo3D is a tridimensional version of Logo. * POOL is a dialect of Logo with object-oriented extensions, implemented in 2014. POOL programs are compiled and run in the graphical IDE on
Microsoft Windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for se ...
. A simplified, cross-platform environment is available for systems supporting
.NET Framework The .NET Framework (pronounced as "''dot net"'') is a proprietary software framework developed by Microsoft that runs primarily on Microsoft Windows. It was the predominant implementation of the Common Language Infrastructure (CLI) until bein ...
. * QLogo is an open-source and cross-platform rewrite of
UCBLogo UCBLogo, also termed Berkeley Logo, is a programming language, a dialect of Logo, which derived from Lisp. It is a dialect of Logo intended to being a “minimum Logo standard.” It has the best facilities for handling lists, files, input/out ...
with nearly full UCB compatibility that uses hardware-accelerated graphics. * Lynx is an online version of Logo developed by Logo Computer Systems Inc. It can run a large number of turtles, supports animation, parallel processes, colour and collision detection. * LogoMor is an open-source online 3D Logo interpreter based on JavaScript and p5.js. It supports 3D drawings, animations, multimedia, 3D models and various tools. It also includes a fully-featured code editor based on CodeMirror * LbyM is an open-source online Logo interpreter based on JavaScript, created and actively developed (as of 2021) for
Sonoma State University Sonoma State University (SSU, Sonoma State, or Sonoma) is a public university in Rohnert Park in Sonoma County, California, US. It is one of the smallest members of the California State University (CSU) system. Sonoma State offers 92 Bachelor's ...
's ''Learning by Making'' program. It features traditional Logo programming, connectivity with a customized microcontroller and integration with a modern code editor.


Influence

Logo was a primary influence on the
Smalltalk Smalltalk is an object-oriented, dynamically typed reflective programming language. It was designed and created in part for educational use, specifically for constructionist learning, at the Learning Research Group (LRG) of Xerox PARC by Alan K ...
programming language. It is also the main influence on the
Etoys EToy or EToys may refer to: * Etoy, Switzerland, a small town * Etoys (programming language), an educational programming language * eToys.com, a Dot-com era company/website * etoy, a conceptual art group * Electronic toys, typically built for ...
educational programming environment and language, which is essentially a Logo variant written in
Squeak Squeak is an object-oriented, class-based, and reflective programming language. It was derived from Smalltalk-80 by a group that included some of Smalltalk-80's original developers, initially at Apple Computer, then at Walt Disney Imagineering ...
(itself a variant of Smalltalk). Logo influenced the procedure/method model in
AgentSheets AgentSheets was one of the first modern block-based programming language for kids. The idea of AgentSheets was to overcome syntactic challenges found in common text-based programming languages by using drag and drop mechanisms conceptualizing com ...
and AgentCubes to program agents similar to the notion of a turtle in Logo. Logo provided the underlying language for Boxer. Boxer was developed at
University of California, Berkeley The University of California, Berkeley (UC Berkeley, Berkeley, Cal, or California) is a public land-grant research university in Berkeley, California. Established in 1868 as the University of California, it is the state's first land-grant univ ...
and MIT and is based on a ''literacy model'', making it easier to use for nontechnical people. KTurtle is a variation of Logo implemented at Qt for the
KDE KDE is an international free software community that develops free and open-source software. As a central development hub, it provides tools and resources that allow collaborative work on this kind of software. Well-known products include the ...
environment loosely based on Logo. Two more results of Logo's influence are
Kojo Kojo may refer to: * ''King Kojo'', a novel by Ruth Plumly Thompson * KOJO (company), Australian entertainment company which supported the Adelaide Film Festival#Indigenous Feature Documentary Initiative * KOJO (FM), a radio station (91.1 FM) lic ...
, a variant of Scala, and Scratch, a visual, drag-and-drop language which runs in a web browser.


References


Further reading


''To Artificial Intelligence'' (1976)
Early AI textbook where Logo is used extensively. (Using the
Edinburgh University The University of Edinburgh ( sco, University o Edinburgh, gd, Oilthigh Dhùn Èideann; abbreviated as ''Edin.'' in post-nominals) is a public research university based in Edinburgh, Scotland. Granted a royal charter by King James VI in 1582 ...
dialect, AI2LOGO)
Turtle Geometry
Abelson and diSessa * ''Children Designers'', Idit Harel Caperton, Ablex Publishing Corporation . Availabl
online
* ''Learning With Logo'', Daniel Watt, McGraw Hill, . Available Through Amazon * Teaching With Logo: Building Blocks For Learning, Molly Watt and Daniel Watt, Addison Wesley (now Pearson) 1986, Available through Amazon * (''Byte'' magazine special 1982 issue featuring multiple Logo articles). {{Authority control 1967 in robotics Apple_II_software Dynamically typed programming languages Domain-specific programming languages Educational programming languages Free educational software Functional languages Lisp programming language family Logo programming language family Programming languages Programming languages created in 1967 Robot programming languages