No arbitrary restrictions

Ken Webb 2010-02-07T15:53:28Z

One goal in Xholon is that there should be no arbitrary restrictions (NAR). Of course there are restrictions in Xholon, but the goal is that these restrictions should be intentional and principled rather than arbitrary. A few examples are included below.

This is not to say that every node should interact with every other node. But it should be possible for any node to locate and interact with some other node when it turns out that this is a desirable thing to do. There should be no arbitrary restriction that would prevent this from being possible. The nodes in a Xholon application thus form a network.
This network of nodes is typically organized as a tree structure, which does impose some principled restrictions. For example, no node can have more than one parent; all nodes in a Xholon application belong to the same network; at any point in time there is only one ultimate root node.
There are no privileged node types that lack the potential to have a parent, child or sibling.
A node that is just a passive object today, may need to be a container for other nodes tomorrow.
It typically turns out that today's system is just part of some larger system. So today's root node will probably be a child of some other node some time in the future.
It's better to think of an application that is constantly alive, that can be continuously transformed, or that can continuously transform itself.
Xholon is currently implemented in Java, but a version could be implemented in other languages such as C and JavaScript. Xholon nodes can currently be implemented using several scripting languages that generate Java bytecode - Groovy, JRuby, Rhino (JavaScript).
Most viruses in our own bodies are helpful or benign. Most scripts running inside a computer application are beneficial.
Whatever it encompasses today will turn out tomorrow to be only part of what it could encompass.
Current sample applications are from a wide variety of domains.
The only limit is computer and JVM memory.
A basic Xholon application has two domains - an application-specific domain, and a supporting framework.

return to main page