在我的SICP研究中,我遇到了一个非常有趣的问题:数据究竟意味着什么?这本书给出了以下定义:
通常,我们可以考虑由一些选择器和构造函数集合定义的数据,以及这些过程为了成为有效的表示而必须满足的特定条件。这种观点不仅可以用于定义“高级”数据对象,如rational,还可以定义较低级别的对象。
我的问题是,由于今天我们倾向于将数据看作不同类型的对象,如字符串、数字、表、JSON和XML表示等等,所以我们所处的抽象级别并不是在word数据中真正考虑到的。所以我想知道,SICP的定义是否被否决了,或者我们仍然可以像在这里描述的那样看待数据。
发布于 2019-08-02 11:11:17
它仍然是相关的。它说,基本的表示法并不重要。例如,以高级语言中的字符串为例;字符串是以UTF-8编码的连续字节数组表示,还是以UTF-32中的32位字组成的连续数组表示,或者甚至表示为链接列表或Rope (非连续数据结构)。只要您能够找到它的长度并检查每个字符,它就是一个字符串数据。(性能可能有所不同。)对于数据来说,最重要的是一致的API。
https://stackoverflow.com/questions/57325152
复制相似问题