目录

语言设计

传值机制

程序等于 数据 + 算法。

算法是一个计算步骤,数据是生产资料,也是生产结果。

如何安排数据?

如果只是写一段几百行的小程序,直接存在全局变量里,谁都可以访问,函数也不需要传参。

int src = 10;
int sum = 0;
... // 所有参与计算的变量
int main (){
    func1();
    func2();
    show();
}
int func1(){ ... }
int func2(){ ... }
int show(){ ... }

如果有些中间的临时数据,只想在某些计算过程中可见,而不是像全局变量一样,谁都可以用。于是就出现了局部变量

int func1(){
   int local = 10;
}

计算过程之间的值交换,也希望是私密的,不想通过全局变量(因为任何地方都可以访问到),于是加入 传参机制 返回值机制

int func1(int a, int b){
    return c;
}

我心目中的好语言:

  • 规则严谨

  • 没有歧义

  • 没有黑魔法变异用法

  • 维护性好

  • 常见数据结构整合到语言中

类型系统

数据的解释取决于类型。

  • 基础类型划分清晰

  • 变量总是被初始化为零值

  • 编译器支持类型推导

  • 不允许存在未使用的局部变量

函数

  • 支持多个返回值