gpt4 book ai didi

data-structures - 最底层的数据结构是什么?

转载 作者:行者123 更新时间:2023-12-04 07:08:11 25 4
gpt4 key购买 nike

我最近看了一个 SICP 讲座,其中 Sussman 演示了如何实现 Scheme 的 cons carcdr只使用程序。

它是这样的:

(define (cons x y)
(lambda (m) (m x y)))

(define (car z)
(z (lambda (p q) p)))

这让我开始思考;什么是数据结构?创建语言时,数据结构是否作为过程构建的抽象实现?如果它们只是由程序组成,那么真正处于最低级别的程序是什么?

我想我想知道的是抽象链的底部是什么(除非它恰好是一直向下的抽象)。它在什么时候变成硬件?

最佳答案

诀窍是你不必关心。 cons , cdrcar是抽象,因此它们的底层实现应该无关紧要。

您拥有的是所谓的“教堂对”,我们从功能构建一切。在现代机器中,我们从 1 和 0 的字符串构建一切,但实际上,这并不重要。

现在,如果您想知道如何在您的特定实现中实现所有这些抽象,那要看情况。很可能你的编译器/解释器正在幕后分配 cons单元作为紧密包装的指针对(或类似的),并将您的函数转换为一串 0 和 1,形成适当的机器代码,并将其与指向其环境的指针配对。

但就像我说的,构建这些抽象的美妙之处在于,作为用户你不必关心:)

关于data-structures - 最底层的数据结构是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23556006/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com