涅槃的火鸟-Pascal前世今生之二(风生水起-Pascal承接衣钵)
毫不过份地说,Pascal是Algol语言家族中几十年技术进化中,最为成功的继承人。1968年,Algol组织的早期成员之一,被奉为软件圭臬的“程序=算法+数据结构”的提出者,瑞士苏黎士理工学院(the Swiss Federal Institute of Technology, ETH-Zurich)的尼古拉斯-沃斯(Niklaus Wirth)教授开始着手开发一个演化版的Algol,他决定简化和剔除原Algol一些晦涩难用的功能,并增加自定义数据类型的能力,以弥补已有简单数据类型的不足。另外,可以支持动态数组、使用保留关键字等等。 到1970年,这个语言的第一个实现已经在CDC 6000上完成开发。
1971年, Wirth教授通过多途径发表了一种高级结构化语言的规范说明,人们惊奇地发现,这种语言酷似Algol而又青出于蓝,条件判断语句“Case”和返回值参数传递的语法与Algol同出一辙,但记录结构却与 Cobol和PL/1有三分神似,还似乎有意借鉴了Fortran在某些特性上的得失,读起来如同自然语言,写起来也很容易上手,通过严格的类型检查,可以确保数据类型不会在声明与使用时发生误差,整体上具有清晰明快而完整一致的语法风格。这位光复Algol的王位继承人,最终以17世纪的法国伟大的数学家和哲学家布莱斯.帕斯卡(Blaise Pascal)命名。
Wirth教授可能也没想到,这个本计划只被用于大学教授数据结构的小资语言,自此名声鹊起,成就了后三十年的一代传奇,也为他后来(1984年)赢得图灵奖(Turing Prize)的至高荣誉埋下了伏笔。而赫赫有名的C语言直到1972才在Unix的开发过程中无心插柳应运而生。显然,这两者最初瞄准的是不同的方向:C是Dennis Ritchie用Assembly写累了Unix而找到的取巧途径,意在用高级语言的表达驾驭系统底层的桀骜马车;而Pascal,从诞生的那一天起,就是为营造一个有秩序的、易维持的应用计算新世界。甚至于出现了C构建的Unix、Linux和Windows,Pascal(准确的说是Wirth教授和Apple共同开发的Object Pascal)造就Lisa和Macintosh的有趣现象(注:目前的Mac OS X 已改用源于FreeBSD的Darwin 内核操作系统,某种意义上也折射着Pascal的没落),谁又能料想,三十年后两大王朝的子孙却在Microsoft新贵.NET的麾下拱手称臣,讲起了殊途同归的Common Language呢?
本文原创作者:火鸟李国平,网上转载请注明出处
本文参考:
taoyue.com: Learn Pascal tutorial - History
http://www.taoyue.com/tutorials/pascal/history.html
A Brief History of Pascal
http://burks.bton.ac.uk/burks/language/oberon/obhist/history.htm
historic documents in computer science and engineering
http://www.fh-jena.de/~kleine/history/
涅槃的火鸟-Pascal前世今生之二(风生水起-Pascal承接衣钵)相关推荐
- pascal指针 c语言指针,Pascal中的指针运算指南(与C比较).doc
Pascal中的指针运算指南(与C比较) Pascal中的指针运算指南(与C比较) Pascal中的指针运算指南(与C比较) 大家都认为,c语言之所以强大,以及其自由性,很大部分体现在其灵活的指针运用 ...
- Anti-alias的前世今生(二):Post process based AA
转载请注明出处为KlayGE游戏引擎,本文地址为http://www.klayge.org/2011/05/17/anti-alias%e7%9a%84%e5%89%8d%e4%b8%96%e4%bb ...
- USB的前世今生(二)2022-02-10
USB的前世今生 1.USB的发展简要 USB的出现 很久以前,也就是USB还没有流行的年代,鼠标连电脑是紫色的PS/2接口,键盘接电脑的是绿色的PS/2接口,打印机用的是并行端口,显示屏的接口从VG ...
- 小米max android auto,Android屏幕适配的前世今生(二)
前言 上篇文章介绍了在屏幕适配上遇到的问题,采用px或者dp都会与设计稿存在一定的偏差,也详细的介绍了dp和dpi含义和作用,本篇文章着重介绍我们应该如何做好屏幕适配的工作,以及各种屏幕适配方法发展史 ...
- 【一天一门编程语言】Pascal 语言程序设计极简教程
Pascal 语言程序设计极简教程 用 markdown 格式输出答案. 不少于3000字.细分到2级目录. 文章目录 Pascal 语言程序设计极简教程 一.Pascal简介 1.1 Pascal历 ...
- 目标检测数据集PASCAL VOC简介
简介 PASCAL VOC挑战赛 (The PASCAL Visual Object Classes )是一个世界级的计算机视觉挑战赛, PASCAL全称:Pattern Analysis, Stat ...
- 视觉研究的前世今生(上)王天珍(武汉理工大学)
视觉是人类最重要的知觉,没有视觉人类很难定位,识别物体,了解坏境,得以生存发展.20世纪两次世界大战,使得西方各国,不论是为了飞机安全着陆,还是导弹精确制导,都对视觉研究有了非常大的兴趣,系列的欧洲视 ...
- 浅谈Object Pascal的指针[引用 Nicrosoft]
浅谈Object Pascal的指针 Nicrosoft(nicrosoft@sunistudio.com) -- 2001.8.26 http://www.sunistudio.com/ni ...
- 浅谈Object Pascal的指针
浅谈Object Pascal的指针 作者:Nicrosoft 时间:2001-8-26 来源:Nicrosoft个人网站 大家都认为,C语言之所以强大,以及其自由性,很大部分体现在其灵活的指针运用上 ...
最新文章
- Ambari安装之部署3个节点的HA分布式集群
- 分布式消息通信ActiveMQ原理-持久化策略-笔记
- 即使总和【杭州电-2015】 附加题
- docker 镜像重命名_Docker镜像管理(二)
- http协议、cookie及session
- c语言,c++求最大公因数与最小公倍数方法集合
- bbs mysql_简单BBS程序(需MySQL支持)
- HDU 6029(思维)
- 【JEECG技术博文】Jeecg高级查询器
- PHP手机壳DIY定制平台源码 Thinkphp内核开发
- LeetCode数据库 177. 第N高的薪水
- 记一次虚拟机共享文件夹的采坑之旅
- 明小子动力上传拿webshell.zip
- win7如何修复wmi服务器,WMI服务是什么?Win7系统禁用WMI服务的方法
- vue中headers是什么_vue在响应头response中获取自定义headers操作
- 笔记本电脑无法连接网络并在网络状态中显示ipv4和ipv6无网络访问权限
- 计算机的屏幕保护怎样开启,win10如何关闭和开启屏幕保护
- [RK3288][Android6.0] 调试笔记 --- 设置中文为默认输入法
- 如何在 Windows 下创建 macOS 引导介质 (USB 启动盘)
- Zookeeper学习思维导图