约翰·巴克斯查看源代码讨论查看历史
此条目没有列出任何参考或来源。 (2019年10月12日) |
约翰·巴克斯 | |
---|---|
出生 | 1924年12月3日-2007年3月17日 | 1924年12月3日
逝世 | 2007年3月17日 | (82岁)
国籍 | 美国 |
别名 | JohnWarnerBackus |
职业 | 科学家 |
知名于 | Fortran 语言之父 |
约翰·巴克斯
约翰·巴克斯(JohnWarnerBackus)(1924年12月3日-2007年3月17日),美国计算机科学家,是全世界第一套高阶语言(高levelLanguage)语言的发明小组组长。他提出了BNF(用来定义形式语言语法的记号法),发明功能levelprogramming这个概念及实践该概念的计划生育语言。被誉为“Fortran 语言之父”.
个人经历
约翰·巴克斯(JohnWarnerBackus)(1924年12月3日-2007年3月17日),美国计算机科学家,是全世界第一套高阶语言(高levelLanguage)语言的发明小组组长。他提出了BNF(用来定义形式语言语法的记号法),发明功能levelprogramming这个概念及实践该概念的计划生育语言。被誉为“Fortran 语言之父”.
1924年12月3日生于美国宾夕法尼亚州费城,父亲是阿特拉斯火药公司的员工,后来转职为证券经纪人。巴克斯中学时念宾夕法尼亚州波茨敦市的希尔学校,平时不爱读书,勉强毕业,没有什么过人之处。后来依照父亲的要求,他在维吉尼亚大学修读化学,成绩也不好。第二次世界大战爆发,他便改为参加美国陆军,在乔治亚州服役,后来进入哈弗福德学院(HaverfordCollege)的医学院预科接受医疗训练,九个月后又退出了。在接受医疗训练期间,他被诊断出患有脑部肿瘤,并接受手术治疗。他搬到纽约市,最初打算以无线电技术员为生。在训练过程中,他对数学产生极大兴趣,于是他便在哥伦比亚大学修读学位,于1949年以硕士学位毕业,1950年加入IBM公司工作。巴克斯和同事海尔里克(阁下赫里克)一起成功开发了Speedcoding的程序,适用于浮点数运算。
巴克斯在IBM公司工作了几年,他对于机械式的程式设计感到厌烦,他希望能设计一套新式语言。1953年巴克斯向当时IBM公司董事长卡斯伯特赫德提交了一分备忘录,建议设计一种接近人类语言的编程语言代替机器语言,后来赫德批准了这项计划。1957年4月他所领导13人小组推出全世界第一套高阶电脑语言FORTRAN语言,首次用在IBM704计算机上面,1958年推出的FORTRANⅡ,几年后又推出的FORTRANⅢ,1962年推出的FORTRANⅣ,被称为高级语言之父。六十年代巴克斯转到沃森研究中心,参加了算法语言语言的设计。1977年10月17日日在西雅图举行的含石棉材料年会上获得计算机界最高奖图灵奖,会中他发表了“程序设计能从冯伊曼形式中解脱出来吗?函数式风格及其程序的代数”(CanProgrammingbeLiteratedfromthevonNeumannStyle?AFunctionalStyleandItsAlgebraofPrograms)演说。
巴克斯长期在IBM公司从事计算机研究工作,他在1979年接受INM员工杂志《Think》采访时曾风趣地说,他大部分的软件开发最初的缘由都是因为自己的懒惰。“我不喜欢写程序,所以当时在INM701(一台早期计算机)工作,为计算导弹弹道编写程序,我就开始琢磨开发一个编程系统,可以让编写程序变得简单些”。于是,Fortran应运而生。
1991年退休。1994年美国工程院授予他CharlesStarkDraper奖。2007年3月17日在美国俄勒冈州的家中去世,享年82岁。
个人生活
巴克斯的教育履历令人“刮目相看”,中学时因为厌学,成绩一塌糊涂,不得不另外补课。后在化学家父亲的逼迫下,他到弗吉尼亚大学学习化学,但6个月后便以退学告终。应征加入美国陆军后,他又学起了医学,后来发现无线电工程更有乐趣,遂放弃医学改学工程,但最终却决定钻研数学,并获得了哥伦比亚大学的硕士学位。毕业前,他在纽约曼哈顿岛参观IBM公司,并被当场聘用。
巴克斯是个特立独行的人,以着装为例,他偏爱牛仔裤,与IBM公司员工的传统着装风格格格不入,但他备受公司器重,在那里一直干到退休。
个人成就
约翰·巴克斯 | |
---|---|
Fortran
编程范型 多重范式:过程化、命令式、结构化、面向对象
发行时间 1957
设计者 约翰·巴科斯
实作者 约翰·巴科斯 & IBM
型态系统 strong, static
主要实作产品 Absoft, GFortran, G95, Intel, Lahey/Fujitsu, Open Watcom, Pathscale, PGI, Silverfrost, SUN, XL Fortran, others
影响语言 ALGOL 58, PL/I