Paul Graham写了这个,但对我来说,这看起来一点也不特别或明确。
ISTM认为编程语言由两件事定义:它的编译器或解释器,它通过fiat定义语言的语法和语义;以及它的标准库,它在很大程度上定义了熟练用户在用该语言编写代码时将使用的习惯用法和技术。
除了一些特殊的例外(例如,.NET家族的非C#成员),大多数语言的标准库都是用这种语言编写的,原因有两个:因为它将共享相同的语法定义、函数调用约定和该语言的通用“外观”,以及因为可能为编程语言编写标准库的人是它的用户,特别是它的设计者。所以没有什么特别的;这是非常标准的。
再说一次,一种语言的编译器本身并没有什么特别或不寻常的地方。C编译器是用