# Glossary

In this chapter you will find an explanation of most of the uncommon words that are used in the handbook.

degrees

  Degrees are units to measure angles or turns. A full turn is 360 degrees, a half turn 180 degrees and a quarter turn 90 degrees. The commands `turnleft`, `turnright` and `direction` need an input in degrees.

input and output of commands

  Some commands take input, some commands give output, some commands take input and give output and some commands neither take input nor give output.

  Some examples of commands that only take input are:

      forward 50
      pencolor 255,0,0
      print "Hello!"

  The `forward` command takes `50` as input. `forward` needs this input to know how many pixels it should go forward. `pencolor` takes a color as input and `print` takes a string (a piece of text) as input. Please note that the input can also be a container. The next example illustrates this:

      $x = 50
      print $x
      forward 50
      $str = "hello!"
      print $str

  Now some examples of commands that give output:

      $x = ask "Please type something and press OK... thanks!"
      $r = random 1,100

  The `ask` command takes a string as input, and outputs the number or string that is entered. As you can see, the output of `ask` is stored in the container `x`. The `random` command also gives output. In this case it outputs a number between 1 and 100. The output of the random is again stored in a container, named `r`. Note that the containers `x` and `r` are not used in the example code above.

  There are also commands that neither need input nor give output. Here are some examples:

      clear
      penup

intuitive highlighting

  This is a feature of &kturtle; that makes coding even easier. With intuitive highlighting the code that you write gets a color that indicates what type of code it is. In the next list you will find the different types of code and the color they get in the editor.

  ## Different types of code and their highlight color

  regular commands | dark blue | The regular commands are described here.
  execution controlling commands | black (bold) | These special commands control execution, read more on them here.
  comments | gray | Lines that are commented start with a comment characters (#). These lines are ignored when the code is executed. Comments allow the programmer to explain a bit about his code or can be used to temporarily prevent a certain piece of code from executing.
  brackets {, } | dark green (bold) | Brackets are used to group portions of code. Brackets are often used together with execution controllers.
  the learn command | light green (bold) | The learn command is used to create new commands.
  strings | red | Not much to say about (text) strings either, except that they always start and end with the double quotes (").
  numbers | dark red | Numbers, well not much to say about them.
  boolean values | dark red | There are exactly two boolean values, namely: true and false.
  variables | purple | Start with a '$' and can contain numbers, strings or boolean values.
  mathematical operators | gray | These are the mathematical operators: `+`, `-`, `*`, `/` and `^`.
  comparison operators | light blue (bold) | These are the comparison operators: `==`, `!=`, `<`, `>`, `<=` and `>=`.
  boolean operators | pink (bold) | These are the boolean operators: `and`, `or` and `not`.
  regular text | black |

pixels

  A pixel is a dot on the screen. If you look very close you will see that the screen of your monitor uses pixels. All images on the screen are built with these pixels. A pixel is the smallest thing that can be drawn on the screen.

  A lot of commands need a number of pixels as input. These commands are: `forward`, `backward`, `go`, `gox`, `goy`, `canvassize` and `penwidth`.

  In early versions of &kturtle; the canvas was essentially a raster image, yet for recent versions the canvas is a vector drawing. This means that the canvas can be zoomed in and out, therefore a pixel does not necessarily have to translate to one dot on the screen.

RGB combinations (color codes)

  RGB combinations are used to describe colors. The R stand for red, the G stands for green and the B stands for blue. An example of an RGB combination is `255,0,0`: the first value (red) is 255 and the others are 0, so this represents a bright shade of red. Each value of an RGB combination has to be in the range 0 to 255. Here a small list of some often used colors:

  ## Often used RGB combinations

  `0,0,0` | black
  `255,255,255` | white
  `255,0,0` | red
  `150,0,0` | dark red
  `0,255,0` | green
  `0,0,255` | blue
  `0,255,255` | light blue
  `255,0,255` | pink
  `255,255,0` | yellow

  Two commands need an RGB combination as input: these commands are `canvascolor` and `pencolor`.

sprite

  A sprite is a small picture that can be moved around the screen. Our beloved turtle, for instance, is a sprite.

  Note: with this version of &kturtle; the sprite cannot be changed from a turtle into something else. Future versions of &kturtle; will be able to do this.