JOVIAL is a
high-level programming language based on
ALGOL 58, specialized for developing
embedded systems (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 starting in 1959 by a team at
System Development Corporation (SDC) headed by
Jules Schwartz 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. 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, 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 ITT 465L Strategic Air Command Control System (SACCS, SAC Control System, 465L Project, 465L Program) was a Cold War "Big L" network of computer and communication systems for command and control of Strategic Air Command "combat aircraft, r ...
(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
T ...
(SACCS) project), due to a lack of
real-time computing 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 adopted a standardized
central processing unit (CPU), the
MIL-STD-1750A, and subsequent JOVIAL programs were built for that processor. Several commercial vendors provided
compilers and related
programming tools to build JOVIAL for processors such as the MIL-STD-1750A, including
Advanced Computer Techniques (ACT),
TLD Systems
TLD Systems, Ltd. was an American software company active in the 1980s and 1990s and based in Torrance, California, that specialized in language compilers for the JOVIAL and Ada programming languages that were targeted to embedded systems.
TLD ...
, 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,
Linux,
Mac OS X 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 Inc., App ...
,
SPARC,
VAX,
1750A
MIL-STD-1750A or 1750A is the formal definition of a 16-bit computer instruction set architecture (ISA), including both required and optional components, as described by the United States Military Standard, military standard document MIL-STD-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 Inc., App ...
,
TI-9989,
Zilog Z800x,
Motorola 680x0, 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 applica ...
,
System 370
The IBM System/370 (S/370) is a model range of IBM mainframe computers announced on June 30, 1970, as the successors to the System/360 family. The series mostly maintains backward compatibility with the S/360, allowing an easy migration path f ...
, and
System z. Further,
DDC-I
DDC-I, Inc. is a privately held company providing software development of real-time operating systems, software development tools, and software services for safety-critical embedded applications, headquartered in Phoenix, Arizona. It was first c ...
, 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's
air traffic control infrastructure, and that the agency that uses it,
NATS Holdings, 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'', ''
SYMPL SYMPL is an obsolete programming language developed by the Control Data Corporation (CDC) for use on the CDC 6000 series computer systems in the 1970s and 1980s. It was based on a subset of CDCs version of JOVIAL, as an alternative to assembly lang ...
'', ''Space Programming Language'' (SPL), and to some extent ''
CMS-2''.
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 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 as ...
s),
arrays of items, status variables (now called
enumerations) 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 communications satellite
*
Advanced Cruise Missile
*
B-52,
B-1B,
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,
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
*
F-111,
F-15,
F-16
The General Dynamics F-16 Fighting Falcon is a single-engine Multirole combat aircraft, multirole fighter aircraft originally developed by General Dynamics for the United States Air Force (USAF). Designed as an air superiority day fighter, it ...
(prior to Block 50),
F-117 fighter aircraft
*
LANTIRN
*
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-wea ...
AWACS aircraft (Prior to Block 40/45)
*Navy
Aegis cruisers
*Army Multiple Launch Rocket System (
MLRS)
*Army
Sikorsky UH-60 Black Hawk 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 of heated gas (usually air) that generates thrust by jet propulsion. While this broad definition can include rocket, Pump-jet, water jet, and hybrid propulsion, the term ...
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 rocket engines
*Civil NAS (
National Airspace System) Air Traffic Control
*
APG-70
The AN/APG-63 and AN/APG-70 are a family of all-weather multimode radar systems designed by Hughes Aircraft (later Raytheon) for the F-15 Eagle air superiority fighter. These X band pulse-Doppler radar systems are designed for both air-air and air ...
,
APG-71
The AN/AWG-9 and AN/APG-71 radars are all-weather, multi-mode X band pulse-Doppler radar systems used in the F-14 Tomcat, and also tested on TA-3B. It is a very long-range air-to-air system with the capability of guiding several AIM-54 Phoenix ...
, 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 Ac ...
airborne
radar 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
DODSSPU.S. Department of Defense Single Stock Point for Military Specifications, Standards and Related Publications
Software Engineering AssociatesDDC-I, Inc.: DDC-I JOVIAL Compiler System (DJCS)* Archived a
Ghostarchiveand th
Wayback Machine
*
{{DEFAULTSORT:Jovial
Procedural programming languages
Avionics programming languages
Systems programming languages
High Integrity Programming Language
ALGOL 58 dialect