Object is used to create a new objects/prototypes. All objects/prototypes (including classes and mixins) inherit methods and properties all the way up to Object via prototypical inheritance.

Methods and Properties

[]
[name]
Get/set the symbol-named property/method value that is stored in self. Inherited properties/methods are not retrieved.
~~
[val]
Return true if val inherits properties or methods from self.traits
class?
Return true if self is a class (and not an object or mixin)
mixin?
Return true if self is a mixin (and not a class or object)
New
Create and return a new object that inherits from self. If self is a class, the created object has traits point to a new mixin that inherits from self.traits
object?
Return true if self is an object (and not a class or mixin)
Subclass
Create and return a new object that inherits from self. If self is a class, the created object has traits point to a new mixin that inherits from self.traits
traits
Type that provides the traits (methods and properties) for an instance of self. For Classes this returns something different than self. Otherwise, it returns self.