非凸科技 2022-06-07 17:22 采纳率: 50%
浏览 7
已结题

Rust难用吗?还能不能变得更好?

Rust 是一种静态语言同时是一种系统语言。它包含了不对程序员隐藏底层计算机内存管理的特性,同时它也有“无所畏惧的并发”。另外,Rust 在设计上还高度强调直观性和内存安全性。正是这种复杂的组合,在计算机语言的设计中强调了人为边界的重要性。

现在,我们假设 Rust 的所有问题一夜之间都被解决了,而且整个 rustc 和 std 也都经过了正式验证。就是说,Rust 突然就获得了包含多个 1 级实现的完整语言规范、能够跟 GCC 比肩的硬件平台支持能力、稳定的 ABI,结果会怎么样?那 Rust 应当就是系统编程的理想语言。

我们也可以从另一个角度设想,Rust 的问题确实消失了,而且变成了一种高级语言,那它就足以干掉一切现有主流编程语言。毕竟 Rust 的默认功能相当丰富,支持多态,包管理器也非常方便。相比之下,JavaScript 语义、Java 企业应用、C 中的 NULL 指针问题、C++ 的不可控 UB、C# 中多到毫无必要的同种功能实现等等。

还可以做这样的设想:Rust 的问题全都消失了,它变成了一套高级且统一的功能集。这可能也是 Rust 开发者们的终极目标:让它成为一种面向大众的高级泛化编程语言。或许设计这样一种语言可能反而比开发现有 Rust 的难度更低,因为我们可以把所有低级细节都隐藏在那层厚厚的语言运行时外壳之下。

但现实告诉我们,即使这些语言各自有着不同的缺点,人们仍然用它编写生产软件。

对此理想主义的编程设计,你是怎么看的呢?

  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 6月15日
    • 创建了问题 6月7日

    悬赏问题

    • ¥30 这是哪个作者做的宝宝起名网站
    • ¥60 版本过低apk如何修改可以兼容新的安卓系统
    • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
    • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
    • ¥50 有数据,怎么用matlab求全要素生产率
    • ¥15 TI的insta-spin例程
    • ¥15 完成下列问题完成下列问题
    • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
    • ¥15 YoloV5 第三方库的版本对照问题
    • ¥15 请完成下列相关问题!