Small Basic: The History of the Logo Turtle
Let’s take a look at where the Small Basic Turtle object came from!
Turtle graphics were based on turtle robots, which were used in programming. In 1948, Grey Walter created his first robots, named Elmer and Elsie. People often thought his robots looked and moved like tortoises.
https://media.tumblr.com/tumblr_m41ogptcSC1rpx08t.png https://2.bp.blogspot.com/-Oxd4RRCuF5o/UY-KhgISNYI/AAAAAAAAAtc/HUWzGb9JjYU/s1600/historia-logo-turtle-01.jpg
Years later, in 1967, two MIT professors (in Cambridge, Massachusetts) invented their PDP 1 computer. Kids from schools connected to it from phone lines. Because they didn’t have monitors, they wanted the kids to see robotics as the result of the programming. That led to the return of the turtle! Only this turtle was more like R2D2:
https://media.tumblr.com/tumblr_m43bakRVSb1rpx08t.png
In order to program for this physical turtle, they created this concept of the display turtle as part of their Logo programming language:
https://theantiroom.files.wordpress.com/2011/04/logo_turtle.jpg
(Logo comes from the Greek word, logos, which means “thought” or “word”, to differentiate that the language is based on words, graphics, and logic, and not just on numbers like most of the contemporary programming languages.)
Before long, most modern implementation of Turtle Graphics show the cursor as an actual turtle:
https://www.annehelmond.nl/wordpress/wp-content/uploads/2007/11/logo_mit.png
And that even extended to the turtle robots as well:
https://gallery.nen.gov.uk/assets/0802/0000/0121/ict_equipment21_mid.jpg
Similar to the Small Basic turtle, the Logo turtle included commands for relative movement and turning.
Here are the methods of the Turtle object in Small Basic:
- Turtle.X - Gets or sets the X location of the turtle. Setting this property changes the turtle’s horizontal location instantly without leaving any trace or turning its head.
- Turtle.Y - Gets or sets the Y location of the turtle. Setting this property changes its vertical location without leaving any trace or turning it direction.
- Turtle.Angle - Gets or sets the angle of the turtle. Setting this property turns the turtle to the new angle.
- Turtle.MoveTo(x, y) - Turns and moves the turtle to the new location. If the pen’s down, the turtle draws a line as it moves.
- Turtle.Move(distance) - Moves your turtle a number of steps in its current direction. If the distance is negative, the turtle moves backwards. If the pen’s down, your turtle draws a line as it moves!
- Turtle.Turn(angle) - Turns your turtle by an angle (in degrees) from its current direction. If the angle’s positive, the turtle turns to its right (clockwise). If the angle’s negative, your turtle turns to its left (counterclockwise).
- Turtle.TurnRight() - Turns your turtle 90 degrees to its right.
- Turtle.TurnLeft() - Turns the turtle 90 degrees to its left.
See Also:
- Small Basic Reference Documentation: Turtle Object
- Small Basic Curriculum: Lesson 2.2: Turtle Graphics
Have a turtle-tastic day!
- Ninja Ed
Comments
Anonymous
January 31, 2015
This one was a bit of a draft. Find the final blog post here: blogs.msdn.com/.../small-basic-the-history-of-the-logo-turtle.aspxAnonymous
February 08, 2015
goodAnonymous
February 26, 2015
Thanks Ammar!Anonymous
January 31, 2016
Computers Today (part 1 of 6) blogs.msdn.com/.../computers-today.aspx ..... CS SPOTLIGHT: Girls in computer programming... why it matters!!! blogs.msdn.com/.../cs-spotlight-girls-in-computer-programming-why-it-matters.aspx ... Computational Thinking - Videos & Papers by Jeannette Wing blogs.msdn.com/.../computational-thinking-videos-amp-papers-by-jeannette-wing.aspxAnonymous
May 02, 2016
This history goes far, far deeper in depth: http://roamerrobot.tumblr.com/post/23079345849/the-history-of-turtle-robots