BASIC四十年
2008-04-11 16:35:59来源:互联网 阅读 ()
你知道吗? BASIC 语言今年四十岁了。和只有九岁的 Java 语言以及只有三岁的 C# 语言相比, BASIC 可以算是程序设计语言中的长辈了。可奇怪的是,某些程序员居然坚持认为 BASIC 是所有语言中最“幼稚”的语言,这不是在颠倒黑白吗?话说回来,就算 BASIC 语言长得嫩一点,那也是人家保养有方、青春永驻啊!现在, BASIC 家族的支持者遍布全世界(在下不才也勉强算一个),未来的 BASIC 语言更没理由衰微——依我看, BASIC 多半会变成程序设计领域里的“老顽童”,嘻嘻哈哈之余,没准儿还会练就一身绝世的武功;这其中的原因嘛,很简单:在过去的四十年里, BASIC 几乎每天都充满了活力,这样一种健康活泼、激情无限的语言当然会在新世纪里大有作为!
? 名门正派
四十年前的 1960 年代是程序设计领域混沌初开的时代。在那个时代里,使用高级语言编写程序的人并不多见,可供选择的高级语言也寥寥无几。 Fortran 语言、 Algol 语言和 COBOL 语言异常繁琐,思想超前的 LISP 语言又在执行效率上表现不佳。用今天的眼光看, 1960 年代的程序员和学习程序设计的大学生们的确苦不堪言。
为了让程序设计和学习程序设计的过程变得更加轻松和愉快, 1960 年代早期, Dartmouth 学院的 J. Kemeny 和 T. Kurtz 开始设计一种新的语言。他们为这种新语言定下的设计原则包括:
? 简单,尽可能地简单
据说, J. Kemeny 和 T. Kurtz 这种尽量追求简单的设计理念来自爱因斯坦的科学哲学观。在理论物理学领域,爱因斯坦毕生所持有的斯宾诺莎式的哲学信仰及其在理论研究中对简洁和优雅的追求历来都为科学史家们所称道。今天,我们已经很难判断, J. Kemeny 和 T. Kurtz 在设计 BASIC 语言时是否具备了爱因斯坦那样深邃的哲学思辨精神;但毫无疑问的是, BASIC 语言的两位创始人把爱因斯坦的思维方式发挥到了极致,他们在摒弃繁冗、追求简约方面的实践非常成功:早期的 BASIC 语言只有 14 条语句,但它却能解决当时已知的大部分计算问题。 BASIC 在语法上的简洁与 Fortran 、 Algol 和 COBOL 语言的繁琐形成了鲜明的对比。
? 像英语,尽可能地像英语
从现代英语中借鉴关键词和语法规则并不是 BASIC 的创举, Fortran 语言已经在这一点上为后来者做出了很好的表率。不过, BASIC 语言的设计者对此显然更为注重,这甚至可以从“ BASIC ”这个语言名称上反映出来。人们通常认为, BASIC 这个名字只是一系列单词的缩写,但少数研究者指出, BASIC 这个名字似乎与 C. K. Ogden 的一项发明有关。 1930 年,为了让非英语国家的英语学习者更快地具备英语交流能力, C. K. Ogden 别出心裁地发明了一种只有 850 个单词和几十条语法规则的“简化版英语”,并将其命名为“ Basic English ”。尽管这门奇怪的英语并没有像 C. K. Ogden 最初所设想的那样成为一种全球通行的“世界语”,但 C. K. Ogden 对英语进行简化以方便交流的思想在事实上促成了今天“商务英语”、“科技英语”等现代英语形态在全世界的流行。从这一点看,程序设计领域里的 BASIC 语言的确与 Basic English 有一定的血缘关系,这种血缘关系也在事实上为 BASIC 语言的流行铺平了道路——对于第一次接触程序设计的人来说, BASIC 语言中的英语语法和英语单词看上去显然要比 LISP 语言中层层叠叠的括号亲切得多。
1964 年, BASIC 语言正式诞生。关于这种新语言的名称, J. Kemeny 和 T. Kurtz 给出的官方注解是: BASIC 是“初学者通用符号指令代码( Beginner''''s All Purpose Symbolic Instruction Code )”的缩写。第一个 BASIC 语言运行环境由 J. Kemeny , T. Kurtz 和几个学生在 GE 系列计算机上实现,并成为了 Dartmouth 学院为 GE 系列计算机开发的分时软件系统 DTSS 的一部分。
从语法特征上看,这种新的语言继承了 Fortran 和 Algol 语言的许多优点,其代码的外观与 Fortran 语言非常接近。但与以往大多数高级语言不同的是, BASIC 语言是一种“交互式”的语言。也就是说,大多数 BASIC 语言程序以解释的方式运行,人们用不着预先编好全部代码并使用批处理的方式提交给计算机处理;使用 BASIC 语言时,我们可以在一种更加舒适、更加人性化的环境下,一边键入代码,一边观察代码的执行结果,并随时对代码进行修改和完善。 BASIC 语言的交互式特征被后来的许多解释型语言和脚本语言所借鉴。一个最典型的例子是, Smalltalk 语言的许多实现(如 VisualWorks )不但继承了 BASIC 语言交互式编程的基本特征,而且还更进了一步,把语言的编辑和运行环境、类库、调试界面、功能插件都整合在了一个可以充分交互的集成环境里。
初生的 BASIC 语言首先在教学实践中取得了成功。从 1964 年开始, J. Kemeny 和 T. Kurtz 在 Dartmouth 学院使用 BASIC 语言讲授程序设计课程。学生们对这种入门型语言的印象极为深刻,他们认为,掌握 BASIC 语言非常容易,在掌握了 BASIC 语言之后,学习 Fortran 等的高级语言也变得相对简单了。应当说, J. Kemeny 和 T. Kurtz 设计 BASIC 时的设想大多被后来的教学实践所证实。很快,其他一些开设计算机课程的院校陆续将 BASIC 语言纳入了教学计划,研究人员也在随后的几年内将 BASIC 语言移植到了好几种不同的计算机系统上。
J. Kemeny 和 T. Kurtz 在 Dartmouth 学院实现的 BASIC 语言被人们称作 Dartmouth BASIC 。在随后的几十年里, BASIC 语言的两位创始人,以及他们的同事和学生们一直致力于对语言本身的语法特性进行优化和改进。 1983 年以前, Dartmouth BASIC 已经陆续发展了七个版本。在 J. Kemeny 和 T. Kurtz 眼中, 1964 年的 BASIC 语言还远未成熟,那时的 BASIC 还只是一组编有行号的指令序列,其中还穿插着惹人生厌的 GOTO 和 GOSUB 语句。由 E. W. Dijkstra 发端,于 1970 年代兴起的结构化程序设计运动不但催生了 Pascal 等一大批结构化程序设计语言,也为 BASIC 语言的进一步发展指明了方向。 1971 年, Dartmouth BASIC 新增了带参数、可调用的外部子程序功能, A. Luehrmann 还为 Dartmouth BASIC 实现了一个交互式的图形库,这让 BASIC 语言在结构化的道路上前进了一大步。 1976 年, Dartmouth BASIC 第一次拥有了完整的结构化语法规则。 S. J. Garland 在 Dartmouth BASIC 的基础上,实现了一种完全符合结构化编程思想的 SBasic 语言( SBasic 是“ Structured Basic ”的缩写)。从这一年起, Dartmouth 的学生们编写 BASIC 程序时,就已经不再需要行号和 GOTO 语句了。 1979 年, Dartmouth BASIC 第一次引入了“包”(有时也被称为“组”)的概念,这是一种类似于 Ada 语言的“包”结构的语法特征,它可以使 BASIC 语言拥有初步的数据封装能力。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:BASIC万花筒
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash