HOME

TheInfoList



OR:

JOVIAL is a
high-level programming language In computer science, a high-level programming language is a programming language with strong abstraction from the details of the computer. In contrast to low-level programming languages, it may use natural language ''elements'', be easier to u ...
based on
ALGOL 58 ALGOL 58, originally named IAL, is one of the family of ALGOL computer programming languages. It was an early compromise design soon superseded by ALGOL 60. According to John Backus The Zurich ACM-GAMM Conference had two principal motives in pro ...
, specialized for developing
embedded system An embedded system is a computer system—a combination of a computer processor, computer memory, and input/output peripheral devices—that has a dedicated function within a larger mechanical or electronic system. It is ''embedded ...
s (specialized computer systems designed to perform one or a few dedicated functions, usually embedded as part of a larger, more complete device, including mechanical parts). It was a major system programming language through the 1960s and 1970s.


History

JOVIAL was developed as a new "high-order"
programming language A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming ...
starting in 1959 by a team at System Development Corporation (SDC) headed by
Jules Schwartz Jules I. Schwartz (June 26, 1927 – June 6, 2013) was an American computer scientist chiefly known for his creation of the JOVIAL programming language. He served in the United States Army in both World War II and the Korean War. He attended ...
to compose software for the electronics of military aircraft. The name ''JOVIAL'' is an acronym for ''Jules' Own Version'' ''of the International Algebraic Language''; ''International Algorithmic Language'' (IAL) was a name proposed originally for
ALGOL 58 ALGOL 58, originally named IAL, is one of the family of ALGOL computer programming languages. It was an early compromise design soon superseded by ALGOL 60. According to John Backus The Zurich ACM-GAMM Conference had two principal motives in pro ...
. According to Schwartz, the language was originally called ''OVIAL'', but this was opposed for various reasons. ''JOVIAL'' was then suggested, with no meaning attached to the ''J''. Somewhat jokingly it was suggested that the language be named after Schwartz, since he was the meeting
chairperson The chairperson, also chairman, chairwoman or chair, is the presiding officer of an organized group such as a board, committee, or deliberative assembly. The person holding the office, who is typically elected or appointed by members of the grou ...
, and this unofficial name stuck. During the 1960s, JOVIAL was a part of the US Military ''L-project'' series, particularly the ITT 465L Strategic Air Command Control System (the
Strategic Automated Command and Control System The Strategic Automated Command and Control System (SACCS) is a United States Strategic Command command and control system to coordinate the operational functions of United States nuclear forces (ICBMs, nuclear bombers, and SLBMs). Background ...
(SACCS) project), due to a lack of
real-time computing Real-time computing (RTC) is the computer science term for hardware and software systems subject to a "real-time constraint", for example from event to system response. Real-time programs must guarantee response within specified time constrai ...
programming languages available. Some 95 percent of the SACCS project, managed by
International Telephone & Telegraph ITT Inc., formerly ITT Corporation, is an American worldwide manufacturing company based in Stamford, Connecticut. The company produces specialty components for the aerospace, transportation, energy and industrial markets. ITT's three businesses ...
(ITT) with software mainly written by SDC, was written in JOVIAL. The software project took two years and fewer than 1,400 programmer years, less than half of the equivalent time in the SAGE L-project. During the late 1970s and early 1980s, the
United States Air Force The United States Air Force (USAF) is the air service branch of the United States Armed Forces, and is one of the eight uniformed services of the United States. Originally created on 1 August 1907, as a part of the United States Army Si ...
adopted a standardized
central processing unit A central processing unit (CPU), also called a central processor, main processor or just processor, is the electronic circuitry that executes instructions comprising a computer program. The CPU performs basic arithmetic, logic, controlling, a ...
(CPU), the MIL-STD-1750A, and subsequent JOVIAL programs were built for that processor. Several commercial vendors provided
compiler In computing, a compiler is a computer program that translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primarily used for programs tha ...
s and related
programming tool A programming tool or software development tool is a computer program that software developers use to create, debug, maintain, or otherwise support other programs and applications. The term usually refers to relatively simple programs, that can b ...
s to build JOVIAL for processors such as the MIL-STD-1750A, including
Advanced Computer Techniques Advanced Computer Techniques (ACT) was a computer software company most active from the early 1960s through the early 1990s that made software products, especially language compilers and related tools. It also engaged in information technology co ...
(ACT), TLD Systems, Proprietary Software Systems (PSS), and others. JOVIAL was standardized during 1973 with MIL-STD-1589 and was revised during 1984 with ''MIL-STD-1589C''. It is still used to update and maintain software on older military vehicles and aircraft. There are three dialects in common use: J3, J3B-2, and J73. , JOVIAL is no longer maintained and distributed by the USAF JOVIAL Program Office (JPO). Software formerly distributed by the JPO is still available through commercial resources at Software Engineering Associates, Inc., (SEA) as are other combinations of host/target processors including
Windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for se ...
,
Linux Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, whi ...
,
Mac OS X macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac computers. Within the market of desktop and lap ...
on
PowerPC PowerPC (with the backronym Performance Optimization With Enhanced RISC – Performance Computing, sometimes abbreviated as PPC) is a reduced instruction set computer (RISC) instruction set architecture (ISA) created by the 1991 Apple– IBM– ...
,
SPARC SPARC (Scalable Processor Architecture) is a reduced instruction set computer (RISC) instruction set architecture originally developed by Sun Microsystems. Its design was strongly influenced by the experimental Berkeley RISC system develope ...
, VAX, 1750A,
PowerPC PowerPC (with the backronym Performance Optimization With Enhanced RISC – Performance Computing, sometimes abbreviated as PPC) is a reduced instruction set computer (RISC) instruction set architecture (ISA) created by the 1991 Apple– IBM– ...
, TI-9989, Zilog Z800x,
Motorola 680x0 The Motorola 68000 series (also known as 680x0, m68000, m68k, or 68k) is a family of 32-bit complex instruction set computer (CISC) microprocessors. During the 1980s and early 1990s, they were popular in personal computers and workstations an ...
, and
IBM System 360 The IBM System/360 (S/360) is a family of mainframe computer systems that was announced by IBM on April 7, 1964, and delivered between 1965 and 1978. It was the first family of computers designed to cover both commercial and scientific applic ...
, System 370, and
System z IBM Z is a family name used by IBM for all of its z/Architecture mainframe computers. In July 2017, with another generation of products, the official family was changed to IBM Z from IBM z Systems; the IBM Z family now includes the newest mod ...
. Further, DDC-I, which acquired parts of Advanced Computer Techniques, also lists JOVIAL compilers and related tools . Most software implemented in JOVIAL is mission critical, and maintenance is growing more difficult. In December 2014, it was reported that software derived from JOVIAL code produced in the 1960s was involved in a major failure of the
United Kingdom The United Kingdom of Great Britain and Northern Ireland, commonly known as the United Kingdom (UK) or Britain, is a country in Europe, off the north-western coast of the continental mainland. It comprises England, Scotland, Wales and ...
's
air traffic control Air traffic control (ATC) is a service provided by ground-based air traffic controllers who direct aircraft on the ground and through a given section of controlled airspace, and can provide advisory services to aircraft in non-controlled airsp ...
infrastructure, and that the agency that uses it,
NATS Holdings NATS Holdings, formerly National Air Traffic Services and commonly referred to as NATS, is the main air navigation service provider in the United Kingdom. It inherited the traditions of UK air traffic control, which (founded over Croydon Airp ...
, was having to train its IT staff in JOVIAL so they could maintain this software, which was not scheduled for replacement until 2016.


Influence

Languages influenced by JOVIAL include ''
CORAL Corals are marine invertebrates within the class Anthozoa of the phylum Cnidaria. They typically form compact colonies of many identical individual polyps. Coral species include the important reef builders that inhabit tropical oceans and se ...
'', '' SYMPL'', ''Space Programming Language'' (SPL), and to some extent ''
CMS-2 CMS-2 is an embedded systems programming language used by the United States Navy. It was an early attempt to develop a standardized high-level computer programming language intended to improve code portability and reusability. CMS-2 was developed ...
''. An
interactive Across the many fields concerned with interactivity, including information science, computer science, human-computer interaction, communication, and industrial design, there is little agreement over the meaning of the term "interactivity", but mo ...
subset of JOVIAL called TINT, similar to
JOSS Joss may refer to: * Joss (name), including a list of people with the name * JOSS, a time-sharing programming language * Joss (Chinese statue), a religious object * Joss JP1, an Australian-built supercar * Joss paper, a type of burnt offering * ...
was developed in the 1960s.


Features

JOVIAL includes features not found in standard ALGOL, such as items (now called
structure A structure is an arrangement and organization of interrelated elements in a material object or system, or the object or system so organized. Material structures include man-made objects such as buildings and machines and natural objects such a ...
s), arrays of items, status variables (now called
enumeration An enumeration is a complete, ordered listing of all the items in a collection. The term is commonly used in mathematics and computer science to refer to a listing of all of the elements of a set. The precise requirements for an enumeration (fo ...
s) and inline assembly language. It also included provisions for "packed" data within tables. Table packing refers to the allocation of items within an entry to words of storage (bits in a unit of data). This was important with respect to the limited memory and storage of the computing systems of the JOVIAL era. The Communication Pool (COMPOOL) in Jovial is similar to libraries of header files for languages such as PL/I and C.


Applications

Notable systems using embedded JOVIAL software include: *
Milstar Milstar (Military Strategic and Tactical Relay) is a constellation of military communications satellites in geosynchronous orbit, which are operated by the United States Space Force, and provide secure and jam-resistant worldwide communications ...
communications satellite * Advanced Cruise Missile *
B-52 The Boeing B-52 Stratofortress is an American long-range, subsonic, jet-powered strategic bomber. The B-52 was designed and built by Boeing, which has continued to provide support and upgrades. It has been operated by the United States Air ...
,
B-1B The Rockwell B-1 Lancer is a supersonic variable-sweep wing, heavy bomber used by the United States Air Force. It is commonly called the "Bone" (from "B-One"). It is one of three strategic bombers serving in the U.S. Air Force fleet along w ...
,
B-2 The Northrop (later Northrop Grumman) B-2 Spirit, also known as the Stealth Bomber, is an American heavy strategic bomber, featuring low-observable stealth technology designed to penetrate dense anti-aircraft defenses. A subsonic flying w ...
bombers *
C-130 The Lockheed C-130 Hercules is an American four-engine turboprop military transport aircraft designed and built by Lockheed (now Lockheed Martin). Capable of using unprepared runways for takeoffs and landings, the C-130 was originally desi ...
, C-141,
C-17 The McDonnell Douglas/Boeing C-17 Globemaster III is a large military transport aircraft that was developed for the United States Air Force (USAF) from the 1980s to the early 1990s by McDonnell Douglas. The C-17 carries forward the name of two ...
transport aircraft Transport aircraft is a broad category of aircraft that includes: * Airliners, aircraft, usually large and most often operated by airlines, intended for carrying multiple passengers or cargo in commercial service * Cargo aircraft or freighters, fix ...
*
F-111 The General Dynamics F-111 Aardvark is a retired supersonic, medium-range, multirole combat aircraft. Production variants of the F-111 had roles that included ground attack (e.g. interdiction), strategic bombing (including nuclear weapons ca ...
,
F-15 The McDonnell Douglas F-15 Eagle is an American twin-engine, all-weather tactical fighter aircraft designed by McDonnell Douglas (now part of Boeing). Following reviews of proposals, the United States Air Force selected McDonnell Douglas's ...
,
F-16 The General Dynamics F-16 Fighting Falcon is a single-engine multirole fighter aircraft originally developed by General Dynamics for the United States Air Force (USAF). Designed as an air superiority day fighter, it evolved into a successf ...
(prior to Block 50), F-117 fighter aircraft *
LANTIRN LANTIRN (Low Altitude Navigation and Targeting Infrared for Night) is a combined navigation and targeting pod system for use on the United States Air Force fighter aircraft—the F-15E Strike Eagle and F-16 Fighting Falcon (Block 40/42 C & D mod ...
* U-2 aircraft *
Boeing E-3 Sentry The Boeing E-3 Sentry is an American airborne early warning and control (AEW&C) aircraft developed by Boeing. E-3s are commonly known as AWACS (Airborne Warning and Control System). Derived from the Boeing 707 airliner, it provides all-weath ...
AWACS aircraft (Prior to Block 40/45) *Navy
Aegis The aegis ( ; grc, αἰγίς ''aigís''), as stated in the ''Iliad'', is a device carried by Athena and Zeus, variously interpreted as an animal skin or a shield and sometimes featuring the head of a Gorgon. There may be a connection with a d ...
cruisers *Army Multiple Launch Rocket System (
MLRS A multiple rocket launcher (MRL) or multiple launch rocket system (MLRS) is a type of rocket artillery system that contains multiple launchers which are fixed to a single platform, and shoots its rocket ordnance in a fashion similar to a voll ...
) *Army
Sikorsky UH-60 Black Hawk The Sikorsky UH-60 Black Hawk is a four-blade, twin-engine, medium-lift utility military helicopter manufactured by Sikorsky Aircraft. Sikorsky submitted the S-70 design for the United States Army's Utility Tactical Transport Aircraft System ( ...
helicopters * F100, F117,
F119 The Pratt & Whitney F119, company designation PW5000, is an afterburning turbofan engine developed by Pratt & Whitney for the Advanced Tactical Fighter (ATF) program, which resulted in the Lockheed Martin F-22 Raptor. The engine delivers thrust ...
jet engine A jet engine is a type of reaction engine discharging a fast-moving jet (fluid), jet of heated gas (usually air) that generates thrust by jet propulsion. While this broad definition can include Rocket engine, rocket, Pump-jet, water jet, and ...
s *
NORAD North American Aerospace Defense Command (NORAD ), known until March 1981 as the North American Air Defense Command, is a combined organization of the United States and Canada that provides aerospace warning, air sovereignty, and protection ...
air defense & control system (Hughes HME-5118ME system) * NATO Air Defence Ground Environment (NADGE) system *
RL10 The RL10 is a liquid-fuel cryogenic rocket engine built in the United States by Aerojet Rocketdyne that burns cryogenic liquid hydrogen and liquid oxygen propellants. Modern versions produce up to of thrust per engine in vacuum. Three RL ...
rocket engines *Civil NAS (
National Airspace System The National Airspace System (NAS) is the airspace, navigation facilities and airports of the United States along with their associated information, services, rules, regulations, policies, procedures, personnel and equipment. It includes components ...
) Air Traffic Control * APG-70, APG-71, and
APG-73 The AN/APG-65 and AN/APG-73 are designations for a family of all-weather multimode airborne radar systems designed by Hughes Aircraft (now Raytheon) for the F/A-18 Hornet, and used on a variety of fighter aircraft types. The APG-79 is an upgraded A ...
airborne
radar Radar is a detection system that uses radio waves to determine the distance (''ranging''), angle, and radial velocity of objects relative to the site. It can be used to detect aircraft, Marine radar, ships, spacecraft, guided missiles, motor v ...
systems


Example

The following example is taken from ''Computer Programming Manual for the JOVIAL (J73) Language. 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 This example defines a procedure named RETRIEVE which takes an unsigned integer input argument CODE and a floating-point output argument VALUE. It searches the 1000-element array TABCODE for an entry that matches CODE, and then sets the floating-point variable VALUE to the element of array TABVALUE having the same matching array index. If no matching element is found, VALUE is set to −99999.0.


References


External links


The Development of Jovial
*
April 2006 archive of the JOVIAL Program Office


including film of a humorous talk on the development of 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)
* Archived a
Ghostarchive
and th
Wayback Machine
* {{DEFAULTSORT:Jovial Procedural programming languages Avionics programming languages Systems programming languages High Integrity Programming Language ALGOL 58 dialect