持。
“这三个方向,抓得非常准!尤其是‘内存管理’中的‘所有权’模型,和‘并发’中的‘协程’与‘通道’,这是两个非常超前,但又无比强大的思想!一旦实现,我们的‘龙语’,将在‘安全性’和‘性能’上,达到一个匪夷所思的高度!”
“我也同意!”王教授扶了扶眼镜,“从数学模型的角度看,‘所有权’模型,可以从根本上杜绝‘悬垂指针’和‘二次释放’这两大内存安全毒瘤。而基于‘通道’的并发模型,则避免了传统‘共享内存’模型中,最令人头疼的‘数据竞争’和‘死锁’问题。这在逻辑上,是完美的!”
有了两位泰斗的支持,整个方案,再无异议。
接下来,就是最艰难,也最激动人心的——
设计环节。
二十几位华夏最顶尖的大脑,分成了三个小组,分别负责一个方向。
他们就在这间“创世之屋”里,开始了不眠不休的,高强度头脑风暴。
黑板,成为了他们的战场。
粉笔,成为了他们的武器。
“关于异常,我建议使用‘Result’枚举类型,而不是传统的‘try-catch’。它能把‘可能出现的错误’,强制性地纳入到编译器的类型检查中,让程序员无法忽略任何一个潜在的失败路径!”孙立国在一个小组里,大胆地提出了自己的见解。
“不行!‘Result’类型虽然安全,但会让代码变得非常臃肿!到处都是‘match’和‘unwrap’!我认为,还是经典的‘try-catch’更符合人的直觉,代码也更简洁!”另一位专家立刻反驳。
“简洁,但危险!多少bug,就是因为程序员偷懒,写了一个空的‘catch’块导致的!”
“那我们可以强制规定,‘catch’块不能为空!”
另一边,内存管理小组的争论,更加激烈。
“‘所有权’模型太激进了!学习曲线太陡峭!一个简单的链表,都可能把新手程序员搞疯!我还是认为,应该从‘智能指针’入手,比如‘引用计数’,更温和,更容易接受!”
“温和?‘引用计数’解决不了‘循环引用’!到时候系统里到处都是无法释放的内存孤岛!那才是真正的灾难!长痛不如短痛!‘所有权’模型,才是釜底抽薪的终极解决方案!”
争论,辩驳,推演,证伪。
思