http://laforge49.blogspot.ca/2009/02/rolon-basics.html
For discussion, here's my (probably inadequate) understanding of rolons:
Rolons are structs (or objects) that contain the following fields
headline
context
names
journals
realms
useraccounts
relations
accesscontrol
usergroups
which form kind of a distributed/able file system.
There's a unique UUID for every rolon, plus a more humane way to reference them using "/" syntax. (I think the mapping between UUID's and names is stored locally in each rolon, iiuc).
The web3/w3c/semantic-web connection is the "relations" field.
A relation is a triple (n-triple) - relation, subject, object.
Code is provided via "plugins", but I haven't sussed out what these are. Rolons can be implemented as XML, so maybe plugins are pieces of embedded code or references to external code.
My $0.02:
Structs (objects) are a bad idea - they lead to premature design calcification.
Everything should be a triple, e.g.
(rolon UUID0 nil)
(headline UUID0 "...")
(context UUID0 (UUID1, UUID2, ...))
(names UUID0 (UUID-to-name-triple-1, UUID-to-name-triple-2, ...))
etc, etc.
Code then attaches itself, like a barnacle, to the bag of triples (a "factbase" in my parlance) and sifts through the facts, performing actions when appropriate.
Or, as I did in VSH, the factbase itself becomes an IP and is passed through a chain of components. Each component has the option to insert new (more semantically refined) triples or deleting triples before passing the factbase along.
As one designs a system, one often "discovers" new ideas about the data - "if I had this field, then the job would be easier at this point". With a factbase confined to contain strict triples, adding "fields" is as easy as inserting new triples. One can even strip out the new fields downstream as an "optimization".
Code should be composable (i.e. FBP).
Data/knowledge should be composable (i.e. triples in factbases).
Clarifications and comments welcome.
pt