Properties
A defined class in a microworld may have an arbitrary number of attributed properties.
The properties are the interesting attributes about the objects in the microworld that we consider of some significance.
All objects have an implicit property called name, which has the value of the word representing that object's name. In other words, anObject refers to the object itself, while anObject name only has a value of the name "anObject"
It is also possible to refer to objects with an expression representing its name. This is useful when the one object that needs to be referred to is only known dynamically (at run time). For this purpose the object command? is used, which includes a word followed by keyword object.
For example both "anObject" object and ("an" + "Object") object refer to an object called anObject.
In the Maze sample program, at any given point we like to know where the robot is located and where is its destination square. Thus a Robot class has a position, and goal-square properties defined. Which means any object of type Robot would have a specific position and goal-square property values at any given state of the microworld (a world).