程序原本(二十三):语言及其面临的系统——语言(将“计算机程序设计”教成语言课,是本末倒置的)

阅读数:43 2019 年 9 月 28 日 18:10

程序原本(二十三):语言及其面临的系统——语言(将“计算机程序设计”教成语言课,是本末倒置的)

我们所谓的“会编程”是指:将我们的意图表达为计算系统的理解能力范围内的语义。而这种语义:

  • 由计算系统与程序员共同确知的数据逻辑构成;且,
  • 最终可以由某种计算方法在指定计算系统上实施以得到计算结果。

这里的计算方法并不是指“算法”,而是指对某种计算实施过程的抽象,例如在“第 3 章 抽象”中所讨论到“命令式”和“函数式”这两种计算范式。所以,

会编程与掌握某种语言的语法形式是无关的。

编程实质上是一种在语义描述上的能力修养。具备这种能力之后,语法也就无非是一些规则、限制和对不同计算系统的理解能力上的差别了。所以“计算机程序设计”这门功课应该教你编程,而不是教你使用一门具体的语言——我们现在大多把它当成语言课,实在是本末倒置了。

评论

发布