对于一个程序设计语言实际上是什么,它被认定的主要用途是什么都不存在某种一致的意见。程序设计语言是一种指挥机器的工具?一种程序员之间交流的方式?一种表述高层设计的媒介?一种算法的记号?一种表述观念间关系的方式?一种试验工具?一种控制计算机化的设备的途径?我的观点是,一个通用程序设计语言必须同时是所有的这些东西,这样才能服务于它缤纷繁杂的用户集合。但也有惟一的一种东西,语言绝不能是-这也将使它无法生存-它不能仅仅是一些“精巧”特征的汇集。