设计一门编程语言的话,你认为最重要的一定要有的特性会是哪些?


Author: Kimmy

设计一门编程语言的话,你认为最重要的一定要有的特性会是哪些?

知乎链接


基本上照着现在的C++做一些改进就好。

值语义是必需的。
RAII是必需的。
move和ownership是必需的。
单层引用(比如T&)是必需的,也就是说,不要有引用的引用(比如T**)。

总之有一个很重要的点就是Zero runtime overhead。

另外,一个设计的不错的宏/模板系统也是必需的。Concept是可选的。
虽然常规的泛型系统足以支撑一般的应用需求,但是如果有一个支持(partial) specialization且编译时structural typing的模板,无论是应用/炫技还是作死都是必备神器。

如果真的要比C++多什么的话,统一ABI吧。

创建时间:2016-02-24 最近更新时间:2023-11-03