引介 | 愿景·世界计算机的系统注册表
以太坊的目标是全球计算机,这是我们 2016 年第一次访问 https://www.ethereum.org/ 的结论。但其从 2013 年概念成型到今天,我们还是仅仅把它作为一个裸机数据库、搭载着为数不多的能用的 “表格”:地址(账户和合约),区块,交易和事件。而若要将其作为操作系统使用,则会需要成千上万种数据类型。
目前,以太坊的杀手应用是支付,但它可以做得更多。
标准数据类型数量较少之问题
以经典的万维网(web)为例,它只有少量的数据类型:web 页面,超链接,关键词。除了把一些关键词当作字符串来处理,web 页面对文本内容一无所知。
以下是每个页面创建者所见的接口含义。
在人类用户看来,web 网络是怎么一回事呢?连篇累牍的浏览,搜索并试图理解每个接口所指向的资源。当前的 “解决方案” 是使用少量公司提供的 “最顶级” 的网站,它们有足够的资金来构建易用的接口。而这会进一步减少竞争,使得新的网站难以被发现和使用。
当你需要使用政府、教育部门的接口或法律资源时又当如何?它会使你为寻找和使用相关服务而筋疲力尽。
那对机器用户而言呢?它会导致自动化系统在浏览网页时错误百出。所以你只能做出网页爬虫,但没法智能且准确地浏览网页。
语义万维网(Semantic Web)很适合成为经典万维网(Classical Web)的系统注册表(System Registry)。但它会给内容生产者一方带来额外的工作,所以不被接受。它提供了大量的新类型以及表示类型关系的类型。由于万维网创建于 90 年代,因此基于万维网的全球计算机只能使用少量的数据类型。
新的开始
以太坊许诺成为全球计算机,并在一开始就提供图灵完备的环境,这是一个非常棒的起点(至少在系统的表达能力上)。然而创建多年之后,以太坊仍然不支持类型注册,甚至也没有系统注册表。我们希望能在以太坊中看到数据类型注册表,继而萌发出系统注册表的雏形。
正因此,我们提交了一个 EIP, 即实现 EVM 上的分布式类型系统(dType):http://eips.ethereum.org/EIPS/eip-190。
更新:同时参见 dType 存储扩展,dType 别名, 语言扩展, 函数扩展。
类型注册表的好处在于类型复用。相较于每个项目单独创建基于自己需求的(不同版本的)相同类型(使得链上的字节码臃肿不堪),它们可以复用已经部署到类型注册表的类型。
当准确理解接口类型时,我们可以用更丰富的形式来展现数据。想象下,当一个区块链浏览器理解链上的一个数值数组为坐标类型时,就能够将其渲染为地图上的点。或者当它理解数据类型时,能够渲染出一幅出色的时间序列图:
type Event {
uint256 timestamp;
uint256 value;
string event_name;
}
type EventSeries {
Event[] events;
string series_name;
}
相同的时间序列可以显示为普通的表或电子表格,这是默认的二维数组的 UI 展现方式。
备注:我们得有办法知道 solc 编译后的 ABI 中的结构体名称。它会让 ABI 能够确定并容易找到输入输出中的类型。我们现在有了针对不同数据的 HTML 小组件,展现方式也是可编程的。用户甚至可以基于已有选项选择展现格式,不再处处受限。
这将使得人人能使用协调良好的 UI/UX 组件。组件能节省用户的时间,因为他会明确知道期望的结果是什么,而不是被强迫去了解一个新的接口如何工作或者为无法分辨是 bug 还是功能而痛苦。
统一的类型系统也能为机器学习和 AI 工具做准备,以更好地理解数据。
我们可以更进一步,构建 web2 工具来使用注册表中的类型,并逐步统一中心化和去中心化服务。
对类型注册表的要求
类型注册表中的数据应该是那些所有人都可以使用的共性的数据格式。注册表很重要的一点是维持其公共品属性,因此必须是非托管的和抗审查的。
创建类型的一般方式是需要取得大家一致同意并以模版形式提供,同时还应出台类型命名的建议和规则(避免命名冲突或名称与实际数据不符)。
任何人都可以创建和提交类型。给注册表添加新类型需是社区共识的结果,类似当前以太坊 EIP 的流程。由此,我们会越来越迫切地需要去中心化的管理工具及其对应的版本管理系统。希望不久就能看到这些工具被 dType 使用。类似 DAOstack,Aragon 这些开源项目在构建管理工具方面取得了很好的进展。
每种数据类型都应在注册表中存储足够多的数据,以保证:
任何人都能将类型应用到他们自己的合约中(比如:类型名称,库/合约地址,子类型和标签) 任何人都能获取类型库和合约的源码 任何人都能在链下缓存完整的注册表数据并基于它开发工具(当前的区块链已经给了我们这一属性)
当共识达成时允许添加新类型 更新类型有些棘手并可能破坏向后兼容性,我们建议只增加更完善的新类型 可以移除类型,前提是它们不再使用而且已经达成共识
辩证视角
其它
(完)
(文内提供了许多超链接,请点击阅读原文到 EthFans 网站上获取)
原文链接:
https://medium.com/@loredana.cirstea/a-vision-of-a-system-registry-for-the-world-computer-be1dc2da7cae
作者: Loredana Cirstea
翻译 & 校对: Wuwei & 阿剑
本文由作者授权 EthFans 翻译及再出版。
你可能还喜欢: