Learning . . 
"Lace Language."
A language specially designed for tying shoelaces. 

SYMBOLS AND COMMANDS:

ALL: all objects

M[ ]: the midpoint of something

= : the two objects are equal

&& : AND

+ : ADD

- : SUBTRACT

! : When a series of commands are on the same line and surrounded by "!"'s, those values have to be true at the same time.

OBJECTS:

L: the shoelace coming out of the left hole
R:  the shoelace coming out of the right
 hole

Tip Left (TL): the end of the left shoelace that is farthest from the shoe
Root Left (RL): the end of the left shoelace that is closest to the shoe, OR: if the shoelace is in a knot, the part just coming out of the knot.

Tip Right (TR): the end of the right shoelace that is farthest from the shoe
Root Right (RR): the end of the right shoelace that is closest to the shoe,  OR: if the shoelace is in a knot, the part just coming out of the knot.

midpoint left (ML): the halfway point between the tip and root of your left shoelace
midpoint right (MR): the halfway point between the tip and root of your right shoelace

Left Top (secLT): The section of the left shoelace between ML and TL.
Left Bottom (secLB): The section of the left shoelace between ML and RL.
Right Top (secRT): The section of the right shoelace between MR and TR.
RIght Bottom (secRB): The section of the right shoelace between MR and RR.

"POSITION DEGREES":

Position 0 degrees (P0): When your shoe laces are stretched straight up towards the sky (assuming your shoe is on the ground and the sky is above you) as far as possible.

Position 90 degrees (P90): When your shoelaces are pulled directly to the right as far as possible. The lace will be fairly perpendicular with the side of your shoe, and parallel with the bottom of your shoe.

Position 180 degrees (P180): Both laces pointing down towards the floor as far as possible. This could be considered the opposite of P0.

Position 270 degrees (P270): When your shoelaces are pulled directly to the left as far as possible. This could be considered the opposite of P90.

POSITION DEGREES ("z"):

Position 90z (P90z): When your shoelaces are pulled directly away from you.

Position 180z (P180z): When your shoelaces are pulled directly towards you.

*You can also add or subtract "z" to Normal positions. Subtracting 5 degrees will bring the shoelace closer to you by 5 degrees. Adding 5 degrees will push the shoelace directly away from you by 5 degrees.
Adding 5 degrees would look like: +5z

RULE: When moving from position to position, always take the shortest and most direct route.

STATES OF BEING:

Every object has a state of being.

STATIONARY: The object cannot be moved until it's state has been changed to "MOVEABLE".
MOVEABLE: Can adjust the position of object if required by another command.
UNBENT: The shoelace or shoelace section is completely straight. This can be changed only by the "MOVEABLE" command.
GLUED: Two (or more) specified objects are stuck together until changed to the state of "UNGLUED".
UNGLUED: The objects can be seperated if required by another command.