族谱网 头条 人物百科

Modula-2

2020-10-16
出处:族谱网
作者:阿族小谱
浏览:305
转发:0
评论:0
描述Modula-2编程语言是由图灵奖(TuringAward)获得者尼克劳斯·维尔特(NiklausWirth)所提出。Modula-2之名称的命名是根据其3个编译单元的模组而来,这些模组分别为程式模组(ProgramModule),定义模组(DefinitionModule)及执行模组(ImplementationModule)。Wirth根据其早期对Pascal、模组编程语言(Modula)或称为Modula-1编程语言及Alto电脑的经验来定义Modula-2。在1976至1977年间,Wirth在XeroxPaloAlto研究中心与一群设计Alto电脑的工作伙伴一同工作,次年,他开始一个在瑞士联邦理工学院资讯研究所的Lilith个人电脑计划。该计划主要的原则乃是以Modula-2为Lilith的系统编程语言,而以Lilith为Modula-2的组织架构。由于不需组译器(Assem...

描述

Modula-2编程语言是由图灵奖(Turing Award)获得者尼克劳斯·维尔特(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编程语言有几项特色使其在计算机科学的发展过程中有着功不可没的功劳。首先,它所提出的电脑架构、语言和作业环境的整合概念是一项创举;其次,它强调程序员在使用者界面的设计上,至少需花费用同实作程式设计时所耗费的成本和努力。最后,它提出对抽象化资料的简化。

参见

Pascal — 初期参考与发想的编程语言

Modula — Modula-2 的初阶语言

Modula-3 — Modula-2 扩增面向对象语言

Mesa

Simula

Oberon

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


免责声明:以上内容版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。感谢每一位辛勤著写的作者,感谢每一位的分享。

——— 没有了 ———
编辑:阿族小谱
发表评论
写好了,提交
{{item.label}}
{{commentTotal}}条评论
{{item.userName}}
发布时间:{{item.time}}
{{item.content}}
回复
举报
点击加载更多
打赏作者
“感谢您的打赏,我会更努力的创作”
— 请选择您要打赏的金额 —
{{item.label}}
{{item.label}}
打赏成功!
“感谢您的打赏,我会更努力的创作”
返回

更多文章

更多精彩文章
打赏
私信

推荐阅读

· Modula-3
开发历史语法语言特性模块化安全vs不安全泛型可追溯性动态编程面向对象异常多线程总结标准库特性实现书籍使用Modula的项目
· 2
数学性质偶数第一个素数:2是唯一的偶数素数。斐波那契数列的第三项西尔维斯特数列的第一项佩兰数列的第三项和第五项巴都万数列的第四项和第五项第二个全哈沙德数(第一个是1)唯一的素普洛尼克数(2=1××-->2{\displaystyle2=1\times2})第一个的士数对于任意数p{\displaystylep}:最小的体有两个元素。欧拉-笛卡尔公式:对任意凸多面体,V−−-->E+F=2{\displaystyleV-E+F=2},其中V,E和F分别是点、边和面的个数。2{\displaystyle{\sqrt{2}}}是最早被发现的无理数基本运算汉语中的用法“二”字的笔顺在现代标准汉语中,数词2在不同情况下,常常需要变换用字以适应需要,这一点在其他数词中是不存在或罕见的。用“二”及“贰”的情况一般地,作序数(含省略“第”字的序数)时,应当用“二”。例:一二三四、二月二日、正月...
· HTTP/2
协议HTTP/2的目标包括异步连接复用,头压缩和请求反馈管线化并保留与HTTP1.1的完全语义兼容。httpbis工作小组最初考虑了Google的SPDY协议、微软的SM协议和Network-FriendlyHTTP更新。Facebook对各方案进行了评价并最终推荐了SPDY协议。HTTP2.0的首个草稿于2012年11月发布,其内容基本和SPDY协议相同。浏览器支持GoogleChrome、MozillaFirefox、MicrosoftEdge和Opera已支持HTTP/2,并默认启用。InternetExplorer自IE11开始支持HTTP/2,但仅限于Windows10Beta,并预设激活。参见超文本传输协议(HTTP)SPDY(已项目淘汰)
· 2元
· PS/2
参见OS/2PS/1(英语:IBMPS/1)PS/2接口

关于我们

关注族谱网 微信公众号,每日及时查看相关推荐,订阅互动等。

APP下载

下载族谱APP 微信公众号,每日及时查看
扫一扫添加客服微信