Modula-2

✍ dations ◷ 2025-11-26 11:25:55 #Modula编程语言家族,ISO标准化编程语言,静态类型编程语言,系统编程语言

Modula-2是由图灵奖获得者尼克劳斯·维尔特(Niklaus Wirth)所提出的一个编程语言。Modula-2之名是根据其3个编译单元的模块而来,这些模块分别为程序模块(Program Module),定义模块(Definition Module)及运行模块(Implementation Module)。

Wirth根据其早期对Pascal、模块编程语言(Modula)或称为Modula-1编程语言及Alto电脑的经验来定义Modula-2。在1976至1977年间,Wirth在Xerox Palo Alto研究中心与一群设计Alto电脑的工作伙伴一同工作,次年,他开始一个在瑞士联邦理工学院信息研究所的Lilith个人电脑项目。该项目主要的原则乃是以Modula-2为Lilith的系统编程语言,而以Lilith为Modula-2的组织架构。由于不需汇编器(Assembler),该语言不仅适用于编写高端的应用程序,也应适用于编写低端,与机器相关的编码程序(Machine-Dependent Coding),用设备的操控与存储体的配置。

该语言本身与Lilith结构之设计,都以优雅及简单为原则,在整个Lilith项目的生命期中(1978-1988),操作系统、绘图套装软件、数据库系统、网络协议、文件服务器及许多其他系统和应用模块都是借着Modula-2发展出来的。

Modula-2设计是让其程序模块得以重复使用(Reuse)。它借着提供一些标准程序库,如异常处置(Exception Handling)、字符串处理(String Processing)、输入/输出(I/O)及并发程序设计(Concurrent Programming)等来降低语言本身的复杂度。

一个Modula-2的定义模块(Definition Module)定义抽象化数据(Data Abstraction)的接口规格。一个定义模块是与其相对应的实现模块(Implementation Module)个别分开来编译。一旦编译好就不必再改变。一个定义模块(Definition Module)包含对常量、类型(Type)、变量及程序标头的宣告。只有那些可能会被其他程序员引用到的程序标头才会被宣告在定义模块内。那些相对应的运行模块包括区域性的常量、类型、变量宣告;以及外部程序和内部实现所需用到的程序定义。

程序是由上而下(Top-Down)的方式发展,其步骤乃是先创建若干定义模块,之后再随着需要创建实现模块的部分。每一个实现模块可在其被调用前对其区域性的数据结构设置初始值。Modula-2也需侦测在实现模块内的数据是否已过时而导致数据的不一致。

Modula-2编程语言有几项特色使其在计算机科学的发展过程中有着功不可没的功劳。首先,它所提出的计算机体系结构、语言和作业环境的集成概念是一项创举;其次,它强调程序员在用户界面的设计上,至少需花费用同实现程序设计时所耗费的成本和努力。最后,它提出对抽象化数据的简化。

本条目部分或全部内容出自以GFDL授权发布的《自由在线电脑词典》(FOLDOC)。

相关

  • 雷沙吉兰雷沙吉兰(英文:Rasagiline,AZILECT®),一种单胺氧化酶的不可逆抑制剂,作为早期帕金森病的治疗单药和作为中、晚期帕金森病 L-多巴(Levodopa) 疗法的附加用药。
  • 纽约州锡拉丘兹锡拉丘兹(英语:Syracuse),或译雪拉古兹、 雪城,是位于美国纽约上州中部的城市,属于纽约州奥农达加县所辖。雪城译名可能为音意合译,因当地位于安大略湖畔而降雪丰沛,而英文名称来自
  • LIR《瑞士历史辞典》(德语:Historische Lexikon der Schweiz;法语:Dictionnaire Historique de la Suisse;意大利语:Dizionario Storico della Svizzera;罗曼什语: Lexicon Istoric Re
  • 外阴干枯症外阴干枯症、外阴干皱(英语:Kraurosis vulvae),是一类妇科外阴和阴道皮肤干枯和萎缩症状,经常与内部组织的慢性炎症反应有关。
  • 马克·鲁法洛马克·艾伦·鲁法洛(英语:Mark Alan Ruffalo,1967年11月22日-)是美国一位男演员,导演,制片人和编剧。出生于美国威斯康辛州密尔沃基附近的基诺沙。童年是在弗吉尼亚州的弗吉尼亚海
  • 国际食物政策研究所国际食物政策研究所(英文简称IFPRI)是一个国际性的农业研究机构。IFPRI的研究范围广泛并围绕一个宗旨,即为消除饥饿和减少贫困寻求持久可行的方案。IFPRI的研究重点是在发展中
  • 统一码收录的字符Unicode 11.0收录了146种文字,包括89种现在仍在使用的文字和57种古代的已经不用的文字。
  • 机构 (工程学)机构(英语:mechanism)或者机制在工程学中是用来传递与变换运动和力的可动装置。机构的基本要素为构件和运动副,以及组成结构运动链。机构学是通过数学、力学和运动学研究各种机
  • 毛里塔尼亚地理毛里塔尼亚是非洲西部的国家,西濒大西洋,毗邻塞内加尔、西撒哈拉、马里共和国和阿尔及利亚,且为萨赫勒和马格里布的一部分。国内为辽阔而干燥的平原,面积1,030,700平方公里;地势
  • 皇太弟皇太弟,储君的一种,简称太弟,与皇太子、皇太孙、皇太叔等,都是皇帝正式继承人的封号,而此一继承人通常是皇帝的亲弟。不少国家历史上都曾出现皇太弟的封号,必须注意的是,如果国家元