【问题标题】:What defines a "persistent" data structure in Clojure?什么定义了 Clojure 中的“持久”数据结构?
【发布时间】:2015-03-05 19:50:08
【问题描述】:

http://clojure.org/data_structures 页面将所有 Clojure 集合解释为“不可变且持久”。我一直在寻找在这种情况下“持久”究竟是什么意思的明确定义,是否有人对此有明确的解释?

【问题讨论】:

    标签: clojure


    【解决方案1】:

    指的是和this维基百科文章一样的持久化。总结:

    在计算中,持久数据结构是一种数据结构, 修改时始终保留其自身的先前版本。 这种数据结构实际上是不可变的,就像它们的操作一样 不(明显地)就地更新结构,而是总是让步 新的更新结构。 (持久数据结构不是数据 致力于持久存储的结构,例如磁盘;这是一个 “持久”一词的不同且无关的含义。)

    【讨论】:

    • 关于 Clojure 版本的另一点毫无价值是它们使用结构共享来减少不变性的堆使用开销
    • 是否有可能拥有一个不可变但不持久的结构?
    • 你总是可以复制很多 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-07
    • 1970-01-01
    • 2013-04-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多