Elixir,没有循环参考可能吗?

时间:2016-12-13 06:17:49

标签: elixir circular-reference

我正在学习Elixir,直到第7章PragProg书,在考虑了不变性和其他项目后,我认为通常不可能在Elixir Maps / Tuples / Lists等中创建循环引用。其中A - >; B - > C - >甲

没有真正尝试欺骗系统,这是真的吗?

1 个答案:

答案 0 :(得分:9)

由于不变性,有鸡蛋问题产生通告。事实上,Elixir没有做任何事情来阻止它;它只是在不变性内开箱即用。

证明:由于链中的C链接A创建时,A必须提前存在; A依次链接B,因此B必须存在; B链接C,要求C存在,但尚未创建。 QED。

不能简单地引用一个未发表的术语 * ,并且不能修改现有的术语,因此,在Elixir中是不可能的。

* 请阅读有关此处措辞的评论中的讨论以及最终选择Term的原因。