jovial
「jovial」の意味・「jovial」とは
「jovial」とは、英語の形容詞で、その根源はラテン語の「Iovis」で、木星の意味を持つ。英語では、陽気な、楽天的な、愉快なといった意味合いで使われる。この単語は、人の性格や態度を表す際によく用いられる。例えば、パーティーで陽気に振る舞う人や、困難な状況でも楽天的な態度を保つ人を「jovial」と形容することができる。「jovial」の発音・読み方
「jovial」の発音はIPA表記では /ˈdʒoʊviəl/ となる。IPAのカタカナ読みでは「ジョウヴィアル」となる。日本人が発音するカタカナ英語では「ジョーヴィアル」と読む。この単語は発音によって意味や品詞が変わるものではない。「jovial」の定義を英語で解説
「jovial」は、Oxford English Dictionaryによると、「Characterized by hearty, joyous humour or a spirit of good-fellowship; merry, jolly.」と定義されている。これは、「心からの、喜びに満ちたユーモアや友情の精神によって特徴づけられる;陽気な、楽しい。」という意味である。「jovial」の類語
「jovial」の類語としては、「cheerful」、「merry」、「jolly」、「joyous」などがある。これらの単語も同様に、人の性格や態度が陽気で楽天的であることを表す。「jovial」に関連する用語・表現
「jovial」に関連する用語や表現としては、「joviality」がある。これは名詞形で、「jovial」の性質や状態を表す。「jovial」の例文
1. He is always jovial and ready to crack a joke.(彼はいつも陽気で、冗談を言う準備ができている)2. Despite the stressful situation, she maintained a jovial attitude.(ストレスの多い状況にもかかわらず、彼女は楽天的な態度を保った)
3. The party was filled with jovial laughter.(パーティーは陽気な笑い声で満ちていた)
4. His jovial personality makes him popular among his friends.(彼の陽気な性格は友人たちの間で彼を人気者にしている)
5. She has a jovial disposition that is infectious.(彼女は感染力のある陽気な性格を持っている)
6. The jovial atmosphere at the reunion was heartwarming.(同窓会の陽気な雰囲気は心温まるものだった)
7. His jovial manner put everyone at ease.(彼の陽気な態度が皆を安心させた)
8. The jovial host welcomed all the guests with a warm smile.(陽気なホストは暖かい笑顔で全てのゲストを歓迎した)
9. Despite his age, he has a jovial spirit that is admirable.(彼の年齢にもかかわらず、彼の陽気な精神は称賛に値する)
10. The jovial music added to the festive mood of the event.(陽気な音楽はイベントの祝祭のムードを高めた)
JOVIAL
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/03/07 18:37 UTC 版)
パラダイム | 手続き型、命令型、構造化 |
---|---|
登場時期 | 1960年 |
設計者 | System Development Corporation (SDC) |
開発者 | Software Engineering Associates (SEA)[1] |
型付け | 静的、強い型付け、安全、構造的 |
主な処理系 | MVS, OpenVMS, macOS, Windows, Linux, SPARC, PowerPC, MIL-STD-1750A, 他のレガシーシステム |
方言 | J3, J3B-2, J73 |
影響を受けた言語 | ALGOL, SAGE |
影響を与えた言語 | CMS-2, Coral 66, SYMPL |
関連言語 | ALGOL |
JOVIAL(ジョヴィアル)は、ALGOL 58をベースにした高水準プログラミング言語であり、組み込みシステム開発用に特化されている。1960-1970年代を通じて主要なシステムプログラミング言語だった[2]。
歴史
JOVIALは軍用機の電子部分のソフトウェアを設計するための「高階[3]:1」プログラミング言語として、1959年にジュールズ・シュウォーツ (Jules Schwartz) を長とするSDC (System Development Corporation) のチームによって開発された[4]。
「JOVIAL」という名前は「Jules' Own Version of the IAL」の頭字語とされる[5]。ここで「IAL (International Algebraic Language)」とはALGOL 58の本来の名称として提案されていたものである[6]。シュウォーツによれば、最初は「OVIAL」という名前だったが、さまざまな理由から反対を受けたため、「JOVIAL」(英語で「陽気な」という意味を持つ)の名が提案された。この「J」には特に意味がなかったが、シュウォーツが委員長であったために半ば冗談として言語をジュールズ・シュウォーツの名にちなんで名付けることが提案され、この非公式の名前が定着したという[7]。
1960年代にはリアルタイムシステムプログラム言語の欠如のため、JOVIALは米軍の「L計画」シリーズ、とくにITT 465L戦略航空指揮統制システム(SACCS計画)の一部を構成した。SACCS計画の約95%はITTによって管理され、そのソフトウェアはSDCによってJOVIALで書かれた。このソフトウェアは2年間をかけて1400人年未満で開発され、これはSAGEにくらべて半分以下の工数だった[8]。
1970年代後半から1980年代はじめにかけて、アメリカ空軍はCPUの標準であるMIL-STD-1750Aを採用し、その後のJOVIAL言語はこのCPUのために設計された。ACT、TLD Systems、PSS(Proprietary Software Systems)ほかいくつかの商用ベンダーがMIL-STD-1750AなどのCPUに対するJOVIALコンパイラおよび関連するプログラミングツールを提供した[9][10]。
JOVIAL言語は1973年にMIL-STD-1589として標準化され、1984年に改訂されてMIL-STD-1589Cになった。現在も古い軍用車両や軍用機のソフトウェアを更新・維持するために使用されている。J3、J3B-2、J73の3つの方言が広く使われる。
現在、アメリカ空軍のJOVIAL管理部門(JPO: JOVIAL Program Office)はもはやJOVIALを管理・配布していない。かつてJPOによって配布されていたソフトウェアは現在もSEA (Software Engineering Associates, Inc.) の商用リソースを通じて入手可能である。Windows、Linux、PowerPC用のMac OS X、SPARC、VAX、MIL-STD-1750A、PowerPC、TI-9989、Z8000、モトローラ 680x0、IBM System/360・System/370・System zといった多様なホスト/ターゲット・プロセッサの組み合わせについても同様である。ACTの一部分を買収したDDC-Iも2020年4月現在JOVIALコンパイラとプログラミングツールを販売している[2]。
JOVIALによって開発されたソフトウェアの大部分はミッションクリティカルであり、その維持は年々困難になりつつある。2014年12月、イギリスの航空交通管制インフラストラクチャーの重要な欠陥に1960年代に書かれたJOVIALのコードに由来するソフトウェアが含まれると報道された。報道によれば、そのソフトウェアを使用しているイギリス航空管制公社(NATS)はソフトウェアの維持のためにIT部門にJOVIALの訓練を施す必要があるため、2016年までは更新される予定がないとされる[11]。
影響
JOVIALの影響を受けた言語にはCORAL、SYMPL、SPL(Space Programming Language)があり、CMS-2にもある程度影響を及ぼしている[12]。1960年代にはJOVIALの対話的サブセットであるTINTというJOSSに似た言語が開発された[7]。
特徴
標準ALGOLにないJOVIALの特徴としてはアイテム(今でいう構造体)、アイテムの配列、状態変数(今でいう列挙型)、インラインアセンブリ言語がある[13]。
JOVIALはまたテーブルの「詰めこみ (packed)」データを含む。テーブルの詰めこみはアイテムを記憶のワードの中に割りあてることを指し、当時のコンピュータシステムの限られた記憶容量を節約するために重要だった。
JOVIALの「Communication Pool (COMPOOL)」はPL/IやC言語などのヘッダファイルのライブラリに似たものである。
使用
組み込みJOVIALソフトウェアを使用した主要なシステムには以下のものがある。
- MILSTAR通信衛星
- ACM巡航ミサイル
- B-52、B-1B[14]、B-2爆撃機
- C-130、C-141、C-17輸送機
- F-111、F-15、F-16(ブロック50以前)、F-117戦闘機
- LANTIRN
- U-2航空機
- ボーイングE-3早期警戒管制機(ブロック40/45以前)
- 海軍のイージス巡洋艦
- 陸軍のMLRS(多連装ロケットシステム)
- 陸軍のUH-60 ブラックホークヘリコプター
- F100、F117、F119ジェットエンジン
- NORADの航空防衛・制御システム(ヒューズH5118ME)
- NATO防空管制組織(NADGE)システム
- RL-10ロケットエンジン
- 全米航空システム(NAS)の航空交通管制
- APG-70、APG-71、APG-73航空機搭載レーダーシステム[15]
例
以下の例はJOVIAL (J73) プログラミングマニュアルからの引用である[3]。
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
この例では符号なし整数CODE
を引数に取り、浮動小数点数VALUE
を出力するRETRIEVE
という手続きを定義している。手続きの中で1000の要素を持つTABCODE
からCODE
に一致する要素を検索し、配列TABVALUE
の中の対応する添字をもつ要素の値をVALUE
に代入している。一致する要素がない場合、VALUE
の値は-99999.0
になる。
脚注
- ^ Software Engineering Associates, Inc. (SEA)
- ^ a b “Mature Development Systems, Field Proven on Hundreds of Applications”. DDC-I (2020年). 2020年4月22日閲覧。
- ^ a b Softech, Inc. (June 1981). Computer Programming Manual for the JOVIAL (J73) Language. Rome, New York: Rome Air Development Center. p. 1. オリジナルのJuly 29, 2018時点におけるアーカイブ。 2018年5月16日閲覧。
- ^ Schwartz, Jules I. (7 April 1989). Oral History interview with Jules I. Schwartz. University of Minnesota . シュウォーツはランド研究所でいくつかの防衛関係の計画、とくにSAGE(半自動式防空管制組織)とJOHNNIACに携わっていた。ランド研究所がSDCを組織したときにシュウォーツは新しい会社に移った。このインタビューにおいてシュウォーツは自分とSAGEのかかわり、AN/FSQ-32コンピュータ上のタイムシェアリングシステム・コンピュータネットワーク・制御システム計画(TDMSなど)に関する研究所における彼の役割、および彼とJ・C・R・リックライダー、ローレンス・ロバーツ、ロバート・サクストン・テイラーとの関係について語っている。シュウォーツはまた後にCSC(コンピュータ・サイエンシズ・コーポレーション)に移ってからの地位についても論じている。
- ^ “Ed and Kay, JOVIAL Pioneers”. jovial.com. 2021年2月23日閲覧。
- ^ Shaw, Christopher J. (1963-12-01). “A specification of JOVIAL”. Communications of the ACM 6 (12): 721–736. doi:10.1145/763973.763978. ISSN 0001-0782 .
- ^ a b Schwartz, Jules I. (August 8, 1978). “The Development of Jovial”. ACM SIGPLAN Notices 13 (8): 203. doi:10.1145/960118.808385 2015年1月28日閲覧。.
- ^ Campbell-Kelly, Martin (2003). From airline reservations to Sonic the Hedgehog: a history of the software industry. Cambridge, Massachusetts: MIT Press. pp. 46-7. ISBN 0-262-03303-8
- ^ Schachter, Oscar (7 May 2004). Oral history interview with Oscar Schachter. University of Minnesota. p. 17 .
- ^ “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): pp. 21–24. (1993年9月)
- ^ Rayner, Gordon (2014年12月12日). “UK flights chaos: Air traffic control computers using software from the 1960s”. Daily Telegraph 2020年4月21日閲覧。
- ^ Digital Computer Basics Rate Training Manual, NAVEDTRA 10088-B, United States Navy, (1978)
- ^ Halang, Wolfgang A.; Stoyenko, Alexander D. (1991). Constructing Predictable Real Time Systems. Springer Verlag. p. 31. ISBN 978-1-4615-4032-8
- ^ “Jovial to smooth U.S. Air Force shift to Ada”. Defense Electronics. (March 1, 1984). オリジナルの2012-10-12時点におけるアーカイブ。 2015年1月28日閲覧。.
- ^ AN/APG-73, Warfighter's Encyclopedia, オリジナルの2004-11-05時点におけるアーカイブ。
外部リンク
- The Development of Jovial
- MIL-STD-1589C, Military Standard: JOVIAL (J73), United States Department of Defense, (6 Jul 1984)
- April 2006 archive of the JOVIAL Program Office
- Jules Schwartz - JOVIAL(JOVIALの開発に関するユーモアにあふれた動画へのリンクがあったが、リンク切れ)
- DODSSP U.S. Department of Defense Single Stock Point for Military Specifications, Standards and Related Publications
- Software Engineering Associates
- DDC-I, Inc.: DDC-I JOVIAL Compiler System (DJCS)
- Jules Schwartz lecture on JOVIAL - YouTube
- “The History of JOVIAL”. California State University. 2022年3月11日閲覧。
- JOVIALのページへのリンク