彼得·诺尔(Peter Naur,1928年10月25日—2016年1月3日),是一位杰出的天文学家和计算机科学家。他在
编程语言设计、编译器设计以及
计算机编程的理论与实践方面做出了根本性的贡献。彼得·诺尔是BNF
范式的改进者,对ALGOL 60的开发做出了重要贡献,并曾任
哥本哈根大学教授。他是2005年
图灵奖得主,也是迄今为止唯一一位获此殊荣的
丹麦籍科学家。
个人经历
1928年10月25日,彼得·诺尔出生于丹麦腓特烈斯堡。
1944年—1947年,在哥本哈根体育馆学习。
1947年—1949年,在
哥本哈根大学学习
天文学并获得天文学学位。
1949年—1950年,服兵役。
1950年—1951年,被推荐前往
剑桥大学国王学院,攻读研究生。
1952年—1953年,在美国担任天文学研究员。
1953年—1959年,担任
哥本哈根天文台科学助理。
1957年,获得哥本哈根大学天文学博士学位。
1959年—1969年,担任哥本哈根大学讲师和哥本哈根计算中心Regnecentralen的程序员。
1969年—1999年,担任
哥本哈根大学数据学研究所教授。
2016年1月3日,在
丹麦赫列夫逝世,享年88岁。
主要成就
科研成就
彼得·诺尔参与了
编程语言的开发,这种语言后来被称为
ALGOL(算法语言),他的主要贡献在于选择正确的描述形式来定义语言。彼得·诺尔在让
哥本哈根计算中心Regnecentralen将关注点从编译器设计转移到ALGOL实现的运行时系统方面发挥了关键作用。20世纪80年代,彼得·诺尔写了一篇名为“Programming as Theory Building”的论文,这篇论文是敏捷软件开发运动的起点。
人才培养
教授课程
在
哥本哈根大学任职期间,彼得·诺尔教授“
数据科学”课程。
教学理念
除了教授计算机基础知识外,彼得·诺尔还反复强调让学生学习其他领域的计算机应用的重要性。
获得荣誉
社会任职
彼得·诺尔是《the ALGOL Bulletin》(ALGOL公报)的创办人,1968年
北大西洋公约组织软件工程会议记录的共同编辑,曾担任《ALGOL 60 report》(ALGOL 60报告)的编辑。
个人著作
彼得·诺尔的著作包括《计算——人类的重要活动》(Computing:a Human Activity,Addi.son·Wesley,1992)、《逻辑和规则的奥妙》(Knowing and Mystique of Logic and Rules,Kluwer Academic Pr.,1995)。据2023年8月AMiner平台数据,彼得·诺尔已发表学术论文122篇,论文被引3684次,H-index:18。他的其他著作还包括《The neural embodiment of mental life by the synapse-state theory》《An anatomy of human mental life》《Antiphilosophical Dictionary》等。
个人生活
彼得·诺尔出生于一个反宗教家庭,是三个孩子中最小的一个。他的父亲艾伯特是个画家,母亲苏珊娜·玛格丽特是个自由职业者,他们家庭有一定的商业背景。艺术和商业人士,如演员、剧作家和建筑师,都会定期拜访彼得·诺尔家。彼得·诺尔的父母在20世纪30年代中期离婚。
天文学是彼得·诺尔的主要爱好。12岁时,他已经对父亲收集的科学书籍表现出了浓厚的兴趣,其中包括
英国天文学家詹姆斯·金斯和
亚瑟·埃丁顿的作品。在
德国占领
丹麦期间,没有城市灯光,彼得·诺尔可以坐在母亲的阳台上观察星星。甚至在十几岁的时候,彼得·诺尔就寻求与
哥本哈根天文台的专业天文学家定期接触。每周放学后,他都会有几天骑自行车去天文台,由专业人士教他如何计算
彗星和
行星的轨道。他学会了使用对数表和天文台的机械计算机器,用数值方法解
微分方程,这些方法除了天文学家之外几乎一无所知。15岁时,彼得已经写了他的第一篇科学论文,并在战后发表。他在学校里讲
第谷·布拉赫,还有
丹麦物理学家
尼尔斯·玻尔,他当时就认识了玻尔。
离开
剑桥大学后,彼得·诺尔在美国继续他的天文研究(1952-1953)。在那里,他遇到了
哈佛大学的
计算机先驱
霍华德艾肯(Howard Aiken)和
普林斯顿大学的
约翰·冯·诺依曼(John von Neumann),并了解了计算机领域的最新技术。 [4]
彼得·诺尔在剑桥大学结识了一生的朋友——彼得·雷特尔(Peter Remnant),彼得·雷特尔向他介绍了几位哲学家和心理学家的著作,其中包括
威廉·詹姆斯(William James)的《
心理学原理》。
人物评价
在20世纪60年代,彼得·诺尔在程序开发研究中发挥了先锋作用(During the 1960s, Peter played a pioneering role in research on program development)。(1968年
北大西洋公约组织科学委员会评)
(彼得·诺尔)对
编程语言的设计和Algol 60的定义、编译器的设计、
计算机编程的理论和实践做出了根本性的贡献。(2005年
图灵奖评)
参考资料
Warning: Invalid argument supplied for foreach() in
/www/wwwroot/newbaike1.com/id.php on line
362