一般递归函数、λ表达式、图灵机

《编程导论(Java)·0.1.1 计算简史*》

面向对象的根在哪?

p5:【计算的边界在哪里?什么样的运算可以用机器来实现呢?什么是可计算的、什么是不可计算的?

为此数理逻辑学家们各显其能提出了各种模型,如哥德尔的般递归函数、丘奇的λ表达式以及艾伦·图灵(Alan Turing)的图灵机。图灵对彼此的工作进行了比较,发现丘奇和哥德尔的模型与自己的抽象计算机,在计算能力上是等价的!】

以一般递归函数、λ表达式、图灵机为根,出现了

  • 基于图灵机的过程/命令编程范式,
  • 基于λ运算的函数编程范式,
  • 基于一阶逻辑(一般递归函数)的逻辑编程范式

而可怜的面向对象编程范式没有直接的、源于计算科学的理论模型。对象技术的实际发展始于1966年。Kisten Nygaard和Ole-Johan Dahl开发了Simula语言,最初被多数人视为一种不切实际的方法和满足一时好奇心的研究。

【page49:它似乎如同拼地图的男孩那样,仅仅是因为思考方式(观念范式)发生了变化。各种面向对象编程语言吸收了命令范式和函数范式大量技术,它之所以被称为“新”范式,正因为它采用了完全不同的看待程序的视角。
除了新的视角和思考方式,它还剩下什么呢?好像没有,或者所有。面向对象编程范式的正确性在于,它是真正的人的思路。从编程语言的发展规律看,功能分解、模块和信息隐藏、抽象数据类型等等为对象技术的出现奠定了基础,虽然对象技术始于1966年,在当时属于超前的、不切实际的思想。】


 to:什么是面向对象编程范式    home

google:一般递归函数  λ表达式  哥德尔



你可能感兴趣的:(java,编程导论,可计算)