The first thing that is different about Wheat, is that the Object model is very different than the object model in Java, Smalltalk, Perl, PHP, etc.. Those systems have a heap based object model. Objects are allocated in the heap and exist in a sort of soup.
Wheat's object model is like the unix file system: There is a root object, and every other object is explicitly contained in another.
So like a file system:
- objects are in a tree
- all objects have names
- all objects have a container
- life of object tied to life of container, not outstanding references
- object identity is object ownership
- (yes, yes, the root object is special - it has no name or container!)
Wheat is 100% consistent in this: every little integer and string, every instance variable, every local variable on the stack (and the stack, and the threads) are all objects, and are in a single tree.