主客体二元组是个十分靠近世界的本质的数据结构

    
liangshan
14-12-12 2 79

我最近有个感悟,就是有方向的二元组。通过对一个有方向的主客体二元组记录集合的解释可以表现出任意的树结构图结构。
这个二元组是常驻内存的,随时变更随时生效,xml或db纯粹用来持久化数据。这个二元组是中心,其它都是附属。
挺巧合的,Dictionary<key,value>这种对象刚好是个有方向的二元组集合。
jint这个javascript引擎就是用Dictionary<key,value>来解释javascript的的
而且事实证明效率不是低而是更高,人家根本就没低效啊,事实是是那些号称高效的.net javascript引擎的30倍啊。
那个anycmd权限引擎也是这么搞的,中心是那个主客体二元组,其它都是附属的,其它实体的存在都是因为直接在那个主客体二元组记录上存储各种类别的数据不合适才特意为它们抽象出类型并将它们的记录存储在别处而只在主客体二元组上留下标识和类型的。
那个anycmd权限引擎使用这个常驻内存中的主客体二元组记录集合模拟出了整个应用系统的静态的组织结构和动态的组织结构。从而才把访问控制这件事情干彻底的。
这个常驻系统内存中的随时可以被外部人主体管理并生效的主客体二元组记录集也可以是工作流的(上一节点,这个节点)二元组。
(key,value)就是信息。信息的本质就是这么定义的。信息就是映射:抽象到抽象的映射是信息;抽象到实在的映射是信息;实在到实在的映射是信息。
(key,value)中的key是什么?是标识,是谁定义的标识?是它的父节点定义的。keyValue二元组集合可以表现出任意的树形结构和图形结构。
由此我推理后觉得整个计算机系统在任意层次包括机器层次,机器代码层次,高级语言层次,都是keyValue。

liangshan
2014-12-12 10:40

我明白了,上次提到两棵树:一棵静态的资源结构树 和 一棵动态的资源运动树。
静态的资源结构树是进程,动态的运动树是线程;
keyVallue主客体二元组上的key是动态的运动树上的节点,而value是静态的资源树上的节点。

进程线程新解:什么是进程?什么是线程?
http://www.jdon.com/46912

banq
2014-12-12 13:49

2014-12-12 10:23 "@anycmd"的内容
都是keyValue ...


图库Neo4J也是可以考虑的,专门针对树形复杂的图。