In Keykos the node is an array of caps. One may object that the node of Keykos is not an object as there is no program that it obeys. We originally thought that way. One day I had written a definition of object and noticed that a node was an object if one allowed the code to be in the kernel. The lines had changed just a bit and the node and a few other sorts of things had become “kernel objects”.
Kernel code that defines kernel objects gets messages in a strange way, but it gets them and interprets them, even for nodes. Such code is on its honor to conform to node specs and thus to confine itself to capability discipline. Some language for the kernel might help here to make this more certain.
Domains stretch things because a domain is now an object in two different ways:
Pages and segments begin to strain this stance.