Definitions — LOGO
last changed 28 May 2008
 

Definitions

Help Documentation
Logo comes with extensive documentation, in the form of MIT's StarLogo website.
Saving a Project
It's helpful to begin a project with a template file, but it's vital to remember to Save As a new project before making changes and saving over the template file.
Exporting Images
It's possible in Logo to export the patches to a .png image file — File menu: Export Picture: Patches.
Case Sensitivity
In a case-sensitive environment, capitalization matters; a lowercase word has a different meaning than an uppercase word with the same spelling.
Commands
Commands allow the user to interact with the turtle and its environment. Without commands, there would be no way to tell the turtle what to do.
Parameters
Parameters are values provided to a command, which allow the command to be enacted. In the statement fd 10, 10 is a parameter.
Procedures
A procedure is a collection of commands which are executed in sequential order. The value of a procedure is that the commands only need to be typed once, after which they can be called repeatedly by simply calling the procedure (along with any needed parameters). Procedures can be written for both the Turtle and Observer windows.
Procedures may or may not have parameters. Regardless of whether the procedure has parameters, commands issued within procedures must receive any necessary parameters.
Turtlewalk
A turtlewalk is a step-by-step "walk" through a program. The programmer physically draws out what the turtle will draw, either with a pencil on a paper or —more entertaining, and useful for demonstration purposes— marching around a room. Associating the commands with physical actions helps to call attention to problem areas.
State Transparency
This is a fancy way of saying "leave the turtle in the same condition you found it." Same position, same heading. Ideally, if the pen was blue when your procedure started, it will be blue when the procedure ends. State transparency falls under the heading of "good programming practice."
Whitespace
Whitespace is a useful way of separating procedures from each other and highlighting documentation. Careful use of whitespace is part of "good programming practice."
Good Programming Practice
Good practice encompasses several topics, including clarity and adequate documentation. In general, a well-written program is one which (a) accomplishes exactly what it sets out to do, and (b) is easy to understand and use. Part (a) comes with competence with the language; (b) equates to good programming practice.
Recursion and Stopping Mechanisms
"Recursive" describes a procedure which calls itself. This is a useful ability, but it's dangerous because it can easily result in infinite loops. A stopping mechanism, logically, breaks out of the loop. Logo lacks a "repeat-until" or "do while" command; this concept must be constructed by the programmer using a stopping mechanism in concert with either recursion or use of a repeat or loop command.
Data Types
Data types describe categories of data. integer, boolean, and lists are data types.
1