为什么Rust写个链表都那么难?

表面上看是因为Rust所有权系统不承认线性逻辑中的指数推理规则(Of course!和Why not?),导致链表这种含有“自指”结构的数据结构无法刻画。
但如果承认指数规则的话,要么回到引用计数垃圾回收的机制,要么手写mfree(Why not?)语句。
但这又回到了老路上,违背了Rust的目标。
但是只要我们提前知道链表的最大长度,那么就能写出来了。
例如:已知链表的最大长度是3,那么我们定义3个类型套一下即可。
问题就出在这里,“链表最大…。

表面上看是因为Rust所有权系统不承认线性逻辑中的指数推理规则(Of course!和Why not?),导致链表这种含有“自指”结构的数据结构无法刻画。
但如果承认指数规则的话,要么回到引用计数垃圾回收的机制,要么手写mfree(Why not?)语句。
但这又回到了老路上,违背了Rust的目标。
但是只要我们提前知道链表的最大长度,那么就能写出来了。
例如:已知链表的最大长度是3,那么我们定义3个类型套一下即可。
问题就出在这里,“链表最大…。


就不想用rust吗?局面打开,j***a写一堆class太臃...
长图文预警!!! 0.前置省流本次 WWDC 最值得一看的是...
用webman重写了公司老旧的TP项目,管理后台这种几乎也没...
最关键是做不大。 CRT最后的绝唱出现在08年,当时一波看...
最近陆陆续续的发布了很多的智能体,有拿Agent做唯一产品的...
高效的核心训练不是仰卧起坐、平板支撑、小燕飞!高效的核心训练...
更新,有人测出来 8G 跟 16G 在导出照片方面的区别: ...
闭眼选flask,我仨都用过,django会把你绑死,fas...
十几年前,我在一个小县城健身房锻炼。 那天来了一小偷,在更衣...
前言:千篇一律的中后台前端现状设计的"复制粘贴"文化打开任何...
