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. |
| 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. |