JOVIAL
编程范型 | 过程式, 指令式, 结构化 |
---|---|
语言家族 | ALGOL |
设计者 | 系统开发公司 |
实作者 | 软件工程协会公司[1] |
发行时间 | 1960年 |
型态系统 | 静态, 强类型, 安全, 结构 |
作用域 | 词法 |
主要实作产品 | |
MVS, OpenVMS, macOS, Windows, Linux, SPARC, PowerPC, MIL-STD-1750A, 和其他遗留系统 | |
衍生副语言 | |
J3, J3B-2, J73 | |
启发语言 | |
ALGOL, SAGE | |
影响语言 | |
CMS-2, Coral 66, SYMPL |
JOVIAL,是一种高级编程语言,基于ALGOL 58,主要针对嵌入式系统开发。JOVIAL包含ALGOL标准所没有的一些特点,如记录、记录数组、内联汇编等。JOVIAL是1960年代至1970年代主要的系统程式语言[2]。
历史[编辑]
JOVIAL是“Jules Own Version of the International Algorithmic Language.”(朱尔斯自己版本的国际算法语言)一语的缩写。[3]JOVIAL于1959年由朱尔斯·施瓦兹发明,用于编写军用飞机电子系统的编写。
例子[编辑]
下列例子取自《JOVIAL(J73)语言计算机编程手册》[4]:
PROC RETRIEVE(CODE:VALUE);
BEGIN
ITEM CODE U;
ITEM VALUE F;
VALUE = -99999.;
FOR I:0 BY 1 WHILE I<1000;
IF CODE = TABCODE(I);
BEGIN
VALUE = TABVALUE(I);
EXIT;
END
END
这个例子定义了叫做RETRIEVE
的一个过程,它接受一个无符号整数输入参数CODE
,和一个浮点输出参数VALUE
。它在数组TABCODE
的前1000
个元素中,查找匹配CODE
的项目,并接着将浮点变量VALUE
设置成,数组TABVALUE
的有相同匹配数组索引的那个元素。如果未找到匹配元素,则VALUE
被设置成−99999.0
。
应用案例[编辑]
参考文献[编辑]
- ^ Software Engineering Associates, Inc. (SEA). [2023-07-22]. (原始内容存档于2019-12-21).
- ^ Mature Development Systems, Field Proven on Hundreds of Applications. DDC-I. Phoenix, Arizona. 2020 [2020-04-22]. (原始内容存档于2023-03-27).
- ^ 存档副本. [2014-08-26]. (原始内容存档于2018-06-04).
- ^ Softech, Inc. Computer Programming Manual for the JOVIAL (J73) Language (PDF). Rome, New York: Rome Air Development Center. June 1981: 1 [May 16, 2018]. (原始内容存档 (PDF)于July 29, 2018).
|