For faster navigation, this Iframe is preloading the Wikiwand page for JOVIAL.

JOVIAL

JOVIAL
编程范型过程式, 指令式, 结构化
语言家族ALGOL
設計者系统开发公司英语System Development Corporation
實作者软件工程协会公司[1]
发行时间1960年,​64年前​(1960
型態系統静态, 强类型, 安全, 结构英语Structural type system
作用域词法
主要實作產品
MVS英语MVS, OpenVMS, macOS, Windows, Linux, SPARC, PowerPC, MIL-STD-1750A, 和其他遗留系统
衍生副語言
J3, J3B-2, J73
啟發語言
ALGOL, SAGE
影響語言
CMS-2英语CMS-2, Coral 66英语CORAL, SYMPL英语SYMPL

JOVIAL,是一种高级编程语言,基于ALGOL 58,主要针对嵌入式系统开发。JOVIAL包含ALGOL标准所没有的一些特点,如记录、记录数组、内联汇编等。JOVIAL是1960年代至1970年代主要的系統程式語言英语system programming language[2]

历史

JOVIAL (J73)语言的计算机编程手册

JOVIAL是“Jules Own Version of the International Algorithmic Language.”(朱尔斯自己版本的国际算法语言)一语的缩写。[3]JOVIAL于1959年由系统开发公司英语System Development Corporation(SDC)的朱尔斯·施瓦兹英语Jules Schwartz所领导的团队发明,用于编写军用飞机电子系统的编写。

在1960年代期间,JOVIAL是美国军方“L计划”系列的一部份,特别是ITT 465L战略空军司令部控制系统英语ITT 465L Strategic Air Command Control System战略自动命令与控制系统英语Strategic Automated Command and Control System(SACCS)计划),其原由是缺乏实时计算编程语言可用。SACCS计划由国际电话与电报公司(ITT)用主要由SDC编写的软件来管理,它大约有95%是用JOVIAL编写的。这个软件项目耗时2年和不到1,400程序员人年,不到半自动地面防空系统所需时间的一半[4]

在1970年代后期和1980年代前期,美国空军采纳了标准化的中央处理器(CPU)MIL-STD-1750A,并为这个处理器编写了后续的JOVIAL程序。一些商业厂商提供了编译器和有关的编程工具,用来为处理器比如MIL-STD-1750A建造JOVIAL程序,这包括了高级计算机技术英语Advanced Computer Techniques(ACT)、TLD系统英语TLD Systems、专有软件系统(PSS)等公司[5][6]

JOVIAL在1973年被标准化为MIL-STD-1589并在1984年被修订为MIL-STD-1589C。它仍被于更新和维护老旧军用车辆和飞行器的软件。常用有三种方言:J3、J3B-2和J73。

例子

下列例子取自《JOVIAL(J73)语言的计算机编程手册》[7]

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

应用案例

使用嵌入式JOVIAL软件的著名系统包括:

参考文献

  1. ^ Software Engineering Associates, Inc. (SEA). [2023-07-22]. (原始内容存档于2019-12-21). 
  2. ^ Mature Development Systems, Field Proven on Hundreds of Applications. DDC-I. Phoenix, Arizona. 2020 [2020-04-22]. (原始内容存档于2023-03-27). 
  3. ^ 存档副本. [2014-08-26]. (原始内容存档于2018-06-04). 
  4. ^ Campbell-Kelly, Martin. From airline reservations to Sonic the Hedgehog: a history of the software industry有限度免费查阅,超限则需付费订阅. Cambridge, Massachusetts: MIT Press. 2003: 46-7. ISBN 0-262-03303-8. 
  5. ^ Schachter, Oscar. Oral history interview with Oscar Schachter. Charles Babbage Institute (University of Minnesota). 7 May 2004: 17. 
  6. ^ JOVIAL (J73) and MIL-STD-1750A ISA Software Support Tools. Ada–JOVIAL Newsletter (High Order Language Control Facility, Wright-Patterson AFB, U.S. Air Force). September 1993: 21–24. 
  7. ^ 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). 

{{bottomLinkPreText}} {{bottomLinkText}}
JOVIAL
Listen to this article

This browser is not supported by Wikiwand :(
Wikiwand requires a browser with modern capabilities in order to provide you with the best reading experience.
Please download and use one of the following browsers:

This article was just edited, click to reload
This article has been deleted on Wikipedia (Why?)

Back to homepage

Please click Add in the dialog above
Please click Allow in the top-left corner,
then click Install Now in the dialog
Please click Open in the download dialog,
then click Install
Please click the "Downloads" icon in the Safari toolbar, open the first download in the list,
then click Install
{{::$root.activation.text}}

Install Wikiwand

Install on Chrome Install on Firefox
Don't forget to rate us

Tell your friends about Wikiwand!

Gmail Facebook Twitter Link

Enjoying Wikiwand?

Tell your friends and spread the love:
Share on Gmail Share on Facebook Share on Twitter Share on Buffer

Our magic isn't perfect

You can help our automatic cover photo selection by reporting an unsuitable photo.

This photo is visually disturbing This photo is not a good choice

Thank you for helping!


Your input will affect cover photo selection, along with input from other users.

X

Get ready for Wikiwand 2.0 🎉! the new version arrives on September 1st! Don't want to wait?