Terrapin Logo 4 has been discontinued! Our new
Terrapin Logo version is much more powerful and
modern; we strongly recommend that you update to our latest release of
the Logo programming language.
Table of Contents
A
| B
| C
| D
| E
| F
| G
| H
| I
| K
| L
| M
| N
| O
| P
| Q
| R
| S
| T
| U
| V
| W
| Variables
| Math Operators
Logo Commands
This section contains an alphabetic listing of all Logo commands.
. |
Top ⬆ |
.WHO |
Reports a list of objects listening to commands. |
.WINDOWS |
Call a Windows system function (not available on the Mac). |
A
|
Top ⬆ |
ABOUT |
User-supplied procedure to display an About box. |
ABS |
Reports the absolute value of a number. |
ACTIVEWINDOW (ACTIVEW) |
Reports the name of the active graphics window. |
AGET |
Reports the value of an array element. |
ALERT |
Displays an alert box. |
ALIAS |
Defines alias names. |
ALL (CONTENTS) |
Outputs a complete structured contents list. |
ALLTURTLES |
A list of all turtles. |
AND |
Logical AND. |
APPENDMENU |
Appends a new menu. |
APPENDMENUCOMMAND |
Appends a new menu item. |
APPENDMENUITEM |
Appends a new menu item. |
APPLY |
Applies a parameter list to a procedure. |
ARCCOS (ACOS) |
Reports the arccosine. |
ARCCOT (ACOT) |
Reports the arccotangent. |
ARCCSC (ACSC) |
Reports the arccosecant. |
ARCSEC (ASEC) |
Reports the arcsecant. |
ARCSIN (ASIN) |
Reports the arcsine. |
ARCTAN (ATAN) |
Reports the arctangent. |
ARCTAN2 (ATAN2) |
Reports the polar angle heading of the motion vector (position change) deltaX deltaY. |
ARRAY |
Creates an array. |
ARRAY? (ARRAYP) |
Reports TRUE if the object is an array. |
ARRAYDIMS |
Reports the structure of an array. |
ASCII |
Converts a character into its ASCII value. |
ASET |
Sets the value of an array element. |
ASK |
Makes objects execute a list of commands. |
B
C
|
Top ⬆ |
CATCH |
Catches runtime errors and THROWn data. |
CHAR |
Converts a number into a Unicode character. |
CHECKTYPE |
Checks an value for a type. |
CLEAN |
Erases the graphics panel. |
CLEARINPUT |
Clears all input from a stream. |
CLEARSCREEN (CS) |
Erases the Graphics panel and homes the turtle. |
CLEARTEXT (CT) |
Clears the Listener panel. |
CLOSE |
Closes a stream. |
CLOSEWINDOW |
Closes a window. |
COLOR |
Reports the color for a name or value if possible. |
COLORINDEX (BASECOLOR) |
Coerces a color value to a basic Logo color number. |
COLORNAME |
Reports the name of a color if possible. |
COLORS |
Reports a list of available color names. |
COMMAND |
Invoke a menu command by its ID number. |
CONTINUE (CO) |
Ends a pause. |
COPYDEF |
Copies a procedure definition. |
COS |
Reports the cosine. |
COT |
Reports the cotangent. |
COUNT |
Counts the number of items in its input. |
CPROP |
Calls a property as a procedure. |
CREATE |
Creates a file. |
CREATE.DIR |
Creates a folder. |
CSC |
Reports the cosecant. |
CTURTLES |
Arranges turtles in a circle. |
CURDIR |
Reports the current working directory. |
D
| | Top ⬆ |
| - | - |
| DATE | Reports the date. |
| DECLARE (DCL) | Creates an object. |
| DEFINE | Defines a procedure. |
| DEFINED? (DEFINEDP) | Checks whether a procedure is defined. |
| DELETE | Deletes one or more files from disk. |
| DELETEMENU | Deletes a menu. |
| DELETEMENUITEM | Deletes a menu item. |
| DIRECTORY (DIR) | Lists the contents of current working directory. |
| DISTANCE | Reports the distance between the turtle and a location. |
| DOT | Draws a dot. |
| DOT? (DOTP) | Tests whether a pixel with a color other than the background color is present. |
| DOTCOLOR | Reports the color of a pixel. |
| DRAW | Clears the current graphics window and resets all attached turtles. |
E
| | Top ⬆ |
| - | - |
| EACH | Applies a runlist to every object in the TELL list. |
| EDALL | Edits the entire Logo workspace. |
| EDIT (ED) | Edits parts or all of the Logo workspace. |
| EDL | Edits a list. |
| EDN | Edits one or more Logo names. |
| EDNS | Edits all Logo names. |
| EDP | Edits one or more Logo procedures. |
| EDPL | Edits one or more Logo property lists. |
| EDPLS | Edits all Logo properties. |
| EDPS | Edits all user-defined, unburied procedures. |
| ELSE | Starts the ELSE branch of an IF command. |
| EMPTY? (EMPTYP) | Checks whether a name is empty. |
| END | Ends a procedure definition. |
| EOF? (EOFP) | Outputs TRUE if the current stream is at EOF. |
| ERALL | Edits the entire Logo workspace. |
| ERASE (ER) | Erases Logo elements. |
| ERN | Erase one or more Logo names. |
| ERNS | Erases all Logo names. |
| ERPL | Erases one or more Logo property lists. |
| ERPLS | Erases all Logo properties. |
| ERPS | Erases all procedures. |
| EVAL | Runs a list and collects all outputs. |
| EVERY | Outputs a list of objects. |
| EXECTIME | Outputs the number of microseconds spent inside a procedure. |
| EXPN (EXP) | Calculates the natural base e raised to a power. |
| EXTENT | Reports the extent of the current Graphics window. |
F
|
Top ⬆ |
FENCE |
Fences all turtles inside the drawing borders. |
FILE.INFO |
Reports information about a file. |
FILE? (FILEP) |
Reports TRUE if a file or directory exists. |
FILL |
Fills an area. |
FILLARRAY |
Sets the values of an array. |
FINDMENUID |
Finds the ID of a menu item. |
FIRST |
Reports the first element of its input. |
FLATTEN |
Reports a flat version of its list input. |
FONT |
Reports the current font of the first active turtle. |
FONTS |
Reports a list of all loaded and available fonts. |
FOR |
Runs a list for a defined number of times. |
FOREACH |
Runs a list for each element of its first input. |
FOREVER |
Runs a list forever. |
FORWARD (FD) |
Moves a turtle forward. |
FPUT |
Prepends an element to its input. |
FROMMEMBER (FM) |
Removes the first part of its input until a pattern is found. |
FULLSCREEN (FS) |
Switches to the Full Screen perspective. |
G
|
Top ⬆ |
GETBYTE |
Reads one byte from the input stream. |
GETX (XCOR) |
Reports the X coordinate of a turtle. |
GETXY (POS) |
Reports the coordinates of a turtle. |
GETY (YCOR) |
Reports the Y coordinate of a turtle. |
GLIST |
Reports the property lists that contain a property with a given name. |
GO |
Jumps to a label inside a procedure. |
GPROP |
Retrieves a property. |
GRID |
Sets the size of the graphics grid. |
GRIDOFF |
Hides the grid of the Graphics window. |
GRIDON |
Displays the grid of the Graphics window. |
H
|
Top ⬆ |
HALT |
Stops one or all background procedures. |
HEADING |
Reports the heading of a turtle. |
HELP |
Displays help for a command. |
HIDETURTLE (HT) |
Hides a turtle. |
HOME |
Moves the turtle back to [0 0]. |
I
|
Top ⬆ |
IF |
Runs instructions based on a condition. |
IFFALSE (IFF) |
Runs a list if TEST was false. |
IFTRUE (IFT) |
Runs a list if TEST was true. |
IGNORE |
Ignores the output of a procedure. |
INT |
Reports the integer part of a number. |
IS.A |
Checks an object for being of a specific type. |
ISEQ |
Outputs a list of sequential integers. |
ITEM |
Returns a specific element of its input. |
K
|
Top ⬆ |
KEY |
Reports the code of the last key that the user typed. |
L
|
Top ⬆ |
LABEL |
Marks a target for the GO command. |
LAST |
Reports the last element of its input. |
LAUNCH |
Launches a runlist or procedure for execution in the background. |
LEFT (LT) |
Turns a turtle left. |
LIST |
Concatenates its inputs to a list. |
LIST? (LISTP) |
Checks for its input being a list. |
LISTARRAY |
Reports the values of an array as a list. |
LOAD |
Loads a file into Logo. |
LOADPIC |
Loads a picture as background picture. |
LOADSHAPE |
Loads a turtle shape from disk and sets the shape of all active turtles. |
LOADSNAP |
Loads a bitmap. |
LOCAL |
Declares local variables inside a procedure. |
LOCKSHAPE |
Prevents a bitmap from turning. |
LOG (LN) |
Outputs the natural logarithm of its input. |
LOG10 |
Outputs the logarithm of its input. |
LOGAND |
Combines its inputs with a boolean AND operation. |
LOGNOT |
Reports the bitwise logical complement of its input. |
LOGOR |
Combines its inputs with a boolean OR operation. |
LOGXOR |
Combines its inputs with a boolean XOR operation. |
LOWERCASE |
Converts its argument to lower case. |
LPUT |
Appends an element to its input. |
LSH (ASHIFT) |
Shifts its input with sign extension. |
LTURTLES |
Arranges turtles in a row. |
M
|
Top ⬆ |
MAKE |
Assigns a value to a name. |
MEMBER? (MEMBERP) |
Checks if an object is part of another object. |
MILLISECONDS |
Outputs the number of milliseconds spent since January 1, 1970. |
MIXEDCASE |
Converts its argument to mixed case. |
MODULO |
Outputs the remainder of two numbers. |
MOUSE |
Reports the position of the mouse cursor. |
MOUSESHAPE |
Reports the shape of the mouse cursor. |
N
|
Top ⬆ |
NAME |
Assigns a value to a name. |
NAME? (NAMEP) |
Checks whether its input is assigned a value. |
NAMELIST |
Outputs a structured contents list with names. |
NAMES |
Outputs a structured contents list with all names. |
NEW |
Creates a new Logo object. |
NOT |
Negates its input. |
NUMBER? (NUMBERP) |
Checks its input for being a number. |
O
|
Top ⬆ |
ONCOMMAND |
Defines the commands that execute when a menu item is selected. |
OPEN |
Opens a file and returns the channel number. |
OPEN.PORT |
Opens a serial port for I/O. |
OR |
Performs a logical OR on its input. |
ORIGIN |
Reports the origin of a turtle’s coordinate system. |
OUTPUT (OP) |
Exits a procedure and outputs a value. |
P
|
Top ⬆ |
PANGLE |
Reports the turtle’s angle as a polar angle. |
PARSE |
Parses a string and outputs a list. |
PATTERN |
Reports the turtle’s pattern. |
PAUSE |
Pauses a procedure. |
PDIST |
Reports the distance from the turtle to its home. |
PEEKBYTE |
Returns the next character from the input stream without reading it. |
PEN |
Reports the pen mode. |
PENCOLOR (PC) |
Reports the pen color. |
PENDOWN (PD) |
Puts the pen down. |
PENDOWN? (PENDOWNP) |
Checks whether the pen is down. |
PENERASE (PE) |
The pen draws with the background color. |
PENREVERSE (PX) |
The pen inverts all colors. |
PENUP (PU) |
The pen moves up. |
PHEADING |
Reports the turtle’s polar heading. |
PI |
Reports the number Pi. |
PICK |
Randomly picks an element. |
PLAY |
Plays sound files and lists of notes. |
PLIST |
Reports the property list of a name. |
PLISTS (PROPERTIES) |
Outputs a structured contents list with all properties. |
PLLIST |
Outputs a structured contents list with properties. |
POALL |
Prints the entire Logo workspace. |
PON |
Prints a Logo name. |
PONS |
Prints all Logo names. |
POPL |
Prints one or more Logo property lists. |
POPLS |
Prints all Logo properties. |
POPRS |
Prints the title of all Logo primitives. |
POPS |
Prints all Logo procedures. |
POT |
Prints the title line of one or more user-defined procedures. |
POTS |
Prints the title line of all user-defined procedures. |
PPOS |
Reports the turtle’s polar position. |
PPROP |
Stores a property. |
PPROPS |
Stores a list of properties. |
PRIMITIVE? (PRIMITIVEP) |
Checks its input for being a built-in procedure or macro. |
PRIMITIVES |
Outputs a structured contents list with all primitives. |
PRINT (PR) |
Prints text with a line feed. |
PRINTLINE |
Prints a list of numbers as Unicode characters. |
PRINTOUT (PO) |
Prints procedures, names, or properties. |
PRINTQUOTE (PQ) |
Prints its input and a newline. |
PROBOT.LIGHTS |
Turns the Pro-Bot’s headlights on or off. |
PROBOT.READ |
Uploads all Pro-Bot procedures into Logo’s workspace. |
PROBOT.SOUND |
Plays Pro-Bot sounds. |
PROBOT.WRITE |
Downloads all Pro-Bot procedures to the Pro-Bot. |
PROBOT? (PROBOTP) |
Tests if a Pro-Bot is connected. |
PROCEDURE? (PROCEDUREP) |
Checks its input for being a user-defined procedure. |
PROCEDURES |
Outputs a list with all user procedures. |
PROCLIST |
Outputs a structured contents list with procedures. |
PSETHEADING (PSETH) |
Sets the polar heading of a turtle. |
PUTBYTE |
Writes a data byte or a Unicode character to the output stream. |
PUTBYTES |
Writes data bytes or characters to the output stream and reads a reply. |
Q
R
|
Top ⬆ |
RANDOM |
Outputs a random number. |
READ |
Reads one Logo word. |
READCHAR (RC) |
Reads a character from the input stream. |
READLINE |
Reads a line and outputs it as a list of numbers. |
READLIST (RL) |
Reads a line and outputs it as a list. |
READPROMPT (RP) |
Opens a dialog box and reads a line. |
READQUOTE (RQ) |
Reads a line. |
READWORD |
Reads the first word of a line. |
RECYCLE |
Starts the garbage collector. |
REMPROP |
Removes a property. |
RENAME |
Renames a disk file. |
REPCOUNT |
Reports the value of the REPEAT counter. |
REPEAT |
Runs a runlist repeatedly. |
REPTOTAL |
Reports the total number of REPEATs. |
RERANDOM |
Seed the random number generator. |
RESTART |
Erases everything and restarts Logo. |
RIGHT (RT) |
Turns a turtle right. |
ROUND |
Rounds a number. |
RSEQ |
Outputs a list of equally spaced rational numbers. |
RUN |
Runs a word or list. |
S
|
Top ⬆ |
SAVE |
Saves the workspace to disk. |
SAVEPIC |
Saves the contents of the Graphics window. |
SAVESHAPE |
Saves a turtle shape. |
SAVESNAP |
Saves a turtle shape. |
SEC |
Reports the secant. |
SELECT.FILE |
Displays a dialog to select a disk file. |
SELECT.FOLDER |
Displays a dialog to select a disk folder. |
SENTENCE (SE) |
Concatenates its inputs to a list, flattening lists. |
SETACTIVEWINDOW (SETACTIVEW) |
Sets the name of the active window. |
SETBG |
Sets the background color. |
SETBGPATTERN |
Sets the background pattern. |
SETCURDIR |
Changes the current working directory. |
SETEXTENT |
Set the extent of the current Graphics window. |
SETFONT |
Sets the turtle drawing font. |
SETHEADING (SETH) |
Sets the heading of a turtle. |
SETMOUSESHAPE |
Sets the shape of the mouse cursor. |
SETORIGIN |
Sets the coordinate system origin of the active turtles. |
SETP |
Sets the turtle’s polar position. |
SETPATTERN |
Sets the turtle pattern. |
SETPC |
Sets the pen color. |
SETPEN |
Sets the pen characteristics. |
SETSHAPE |
Sets the shape of all active turtles. |
SETSPEED |
Sets the speed at which turtle commands are executed. |
SETSTEPSIZE |
Sets the step size of all active turtles and bitmaps. |
SETTURTLENAME (SETTNAME) |
Sets the name of a turtle. |
SETTURTLES (SETT) |
Creates a range of turtles. |
SETTURTLESIZE (SETTSIZE) |
Sets the size of a turtle. |
SETTWINDOW |
Attaches a turtle to a Graphics window. |
SETVELOCITY |
Sets the independent speed of a turtle. |
SETWIDTH (SETW) |
Sets the pen width. |
SETWINSIZE |
Sets the size of a window. |
SETWPOS |
Sets the position of a window. |
SETWSIZE |
Sets the size of a floating window. |
SETX |
Sets the X coordinate of a turtle. |
SETXY (SETPOS) |
Sets the coordinates of a turtle. |
SETY |
Sets the Y coordinate of a turtle. |
SHAPE |
Outputs the name of the first active turtle’s shape. |
SHOW |
Prints text with a line feed. |
SHOWN? (SHOWNP) |
Reports whether a turtle is visible. |
SHOWTURTLE (ST) |
Makes a turtle visible. |
SIN |
Reports the sine. |
SLOWTURTLE |
Slows down the turtle to half speed. |
SNAP |
Moves parts of the graphics window into a bitmap. |
SNAPSIZE |
Outputs the size of a bitmap. |
SPEED |
Reports the speed at which turtle commands are executed. |
SPLITSCREEN (SS) |
Switches to the Split Screen perspective. |
SQRT |
Reports the square root. |
STAMP |
Draw a bitmap or turtle. |
STAMPOVAL |
Draws an oval. |
STAMPRECT |
Draws a rectangle. |
STEPSIZE |
Outputs the step size of the first active turtle or bitmap. |
STOP |
Exits a procedure. |
SUBDIR |
Lists the contents of current working directory. |
SUBST |
Substitutes text in a word or a list. |
T
|
Top ⬆ |
TAN |
Reports the tangent. |
TELL |
Defines a list of objects listening to commands. |
TELLALL |
Tells a range of turtle numbers. |
TELLEVEN |
Tells all turtles with even numbers. |
TELLODD |
Tells all turtles with odd numbers. |
TEST |
Test a condition; used with IFTRUE and IFFALSE. |
TEXT |
Outputs a procedure definition. |
TEXTARRAY |
Sets the structure of an array. |
TEXTSCREEN (TS) |
Switches to the Text Screen perspective. |
THEN |
Starts the THEN branch of an IF command. |
THING |
Reports the value of a name. |
THROW |
Throws a Logo word or a runtime error. |
TIME |
Outputs the time. |
TO |
Defines a procedure. |
TOPLEVEL |
Returns to toplevel. |
TOWARDS |
Reports the angle of a position compared to the turtle position. |
TURTLENAME (TNAME) |
Gets the name of the first active turtle. |
TURTLENAMES (TNAMES) |
Outputs a list of all turtle names. |
TURTLES |
Reports the number of turtles. |
TURTLESIZE (TSIZE) |
Reports the size of a turtle. |
TURTLETEXT (TT) |
Prints its input on the Graphics window. |
TURTLETEXTBASE (TTBASE) |
Outputs the baseline offset of the first listening turtle’s font. |
TURTLETEXTSIZE (TTSIZE) |
Outputs the dimensions of a text drawn with the first listening turtle. |
TWINDOW |
Outputs the name of the window of the first active turtle. |
TYPE |
Prints text. |
TYPEOF |
Reports the type of a name. |
U
V
|
Top ⬆ |
VELOCITY |
Reports the independent movement speed of a turtle. |
VERINFO |
Outputs Logo version information as a list. |
VERSION (VER) |
Outputs the Logo version. |
W
|
Top ⬆ |
WAIT |
Waits for a number of milliseconds. |
WHILE |
Runs a list until a condition is false. |
WHO |
Reports a list of objects listening to commands. |
WIDTH |
Reports the pen width. |
WINDOW |
Removes the boundary for turtle movements. |
WINSIZE |
Reports the size of a window. |
WORD |
Concatenates its inputs to a word. |
WORD? (WORDP) |
Checks its input for being a word. |
WORKSPACE.VIEW |
Switches to the Work perspective. |
WPOS |
Outputs the position of a window. |
WRAP |
Lets the turtles wrap inside the window. |
WSIZE |
Reports the size of a window. |
Variables
|
Top ⬆ |
“LOGO.ENV |
Contains a property list of global program and system settings. |
“PREFS |
System-wide properties. |
:BASE |
Sets the numeric base used when printing numbers. |
:CASE |
Makes Logo convert its input to upper case or not. |
:CURRENT.GRAPHICS |
Contains the current graphics window name. |
:CURRENT.WINDOW |
Contains the current window name. |
:DATADIR |
Reports the user’s data directory. |
:DESKTOPDIR |
Reports the desktop directory. |
:ERROR |
Contains the type of the last runtime error. |
:ERRORTEXT |
Reports the text of the last caught runtime error or THROWn word. |
:INITIAL.LAYOUT |
Reports or sets the initial layout of Logo panels. |
:LAYOUT |
Reports or sets the layout of Logo panels. |
:LOGODIR |
Reports Logo’s startup directory. |
:PICTURE.FORMAT |
Controls the format of saved pictures. |
:PRECISION |
Sets the precision in which numbers are printed. |
:STANDARD.INPUT |
The number of the input stream. |
:STANDARD.OUTPUT |
The number of the output stream. |
:TAB |
Sets the tab stop position. |
:TRACE |
Controls the output of debugging information. |
:USERNAME |
Reports the login user ID. |
Math Operators
|
Top ⬆ |
* (PRODUCT) |
Calculates the product of its inputs. |
+ (SUM) |
Reports the sum of its inputs. |
- (DIFFERENCE) |
Outputs the difference of two or more numbers. |
/ (QUOTIENT) |
Reports the quotient of its inputs. |
< (.LT) |
Tests if its first input is less than its second input. |
<= (.LE) |
Tests if its first input is less than or equal to its second input. |
<> (!=) |
Tests its inputs for inequality. |
= (.EQ) |
Tests its inputs for equality. |
> (GREATER?) |
Tests if its first input is greater than its second input. |
>= (.GE) |
Tests if its first input is greater than or equal to its second input. |
REMAINDER (%) |
Outputs the remainder of two numbers. |
^ (POWER) |
Raises a number to the power of another number. |