Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

CORAL

From Wikipedia, the free encyclopedia
Early programming language

Coral 66
Paradigmsprocedural,imperative,structured
FamilyALGOL
Designed byPhilip Woodward, I. F. Currie, M. Griffiths
DeveloperRoyal Radar Establishment
First appeared1964; 62 years ago (1964)
Typing disciplineStatic,strong
ScopeLexical
Implementation languageBCPL
PlatformCTLModular-1,DEC Alpha,GEC,Ferranti,Honeywell,HPE Integrity Servers, Interdata 8/32,PDP-11,SPARC,VAX,x86,Intel 8080,Zilog Z80,Motorola 68000
OSOpenVMS,[1]BSDUnix,Linux,Solaris
Influenced by
ALGOL,JOVIAL,Fortran

CORAL, short forComputer On-line Real-time Applications Language is aprogramming language originally developed in 1964 at theRoyal Radar Establishment (RRE),Malvern, Worcestershire, in the United Kingdom.[2] The R was originally for "radar", not "real-time".[3] It was influenced primarily byJOVIAL, and thusALGOL, but is not asubset of either.

The most widely-known version,CORAL 66, was subsequently developed by I. F. Currie and M. Griffiths under the auspices of theInter-Establishment Committee for Computer Applications (IECCA). Its official definition, edited byWoodward, Wetherall, and Gorman, was first published in 1970.[4]

In 1971, CORAL was selected by theMinistry of Defence as the language for future military applications and to support this, a standardization program was introduced to ensure CORAL compilers met the specifications. This process was later adopted by theUS Department of Defense while definingAda.

Overview

[edit]

Coral 66 is ageneral-purpose programming language based onALGOL 60, with some features from Coral 64,JOVIAL, andFortran. It includes structured record types (as inPascal) and supports the packing of data into limited storage (also as in Pascal). LikeEdinburgh IMP it allowsinline (embedded)assembly language, and also offers goodruntime checking and diagnostics. It is designed forreal-time computing andembedded system applications, and for use on computers with limited processing power, including those limited tofixed-point arithmetic and those without support for dynamic storage allocation.

The language was an inter-service standard for British military programming,[5] and was also widely adopted for civil purposes in the British control and automation industry. It was used to write software for both theFerranti[6] andGeneral Electric Company (GEC) computers from 1971 onwards. Implementations also exist for the Interdata 8/32,PDP-11,VAX andAlpha platforms andHPE Integrity Servers; for theHoneywell, and for theComputer Technology Limited (CTL, later ITL)Modular-1;[7] and forSPARC runningSolaris, andIntel runningLinux.

QueenElizabeth II sent the first email from ahead of state from theRoyal Signals and Radar Establishment over theARPANET on 26 March 1976. The message read "This message to all ARPANET users announces the availability on ARPANET of the Coral 66 compiler provided by theGEC 4080 computer at the Royal Signals and Radar Establishment, Malvern, England, ... Coral 66 is the standard real-time high level language adopted by theMinistry of Defence."[8][9]

As Coral was aimed at a variety of real-time work, rather than general office data processing, there was no standardised equivalent to astdiolibrary. IECCA recommended a primitiveinput/output (I/O) package to accompany any compiler (in a document titledInput/Output of Character data in Coral 66 Utility Programs). Most implementers avoided this by producing Coral interfaces to extant Fortran and, later,C libraries.

CORAL's most significant contribution to computing may have been enforcingquality control in commercialcompilers.[7] To have a CORAL compiler approved by IECCA, and thus allowing a compiler to be marketed as a CORAL 66 compiler, the candidate compiler had to compile and execute a standard suite of 25 test programs and 6 benchmark programs. The process was part of theBritish Standard (BS) 5905 approval process. This methodology was observed and adapted later by theUnited States Department of Defense for the certification ofAda compilers.

Source code for a Coral 66 compiler (written inBCPL) has been recovered and theOfficial Definition of Coral 66 document byHer Majesty's Stationery Office (HMSO) has been scanned; the Ministry of Defence patent office has issued a licence to the Edinburgh Computer History project to allow them to put both the code and the language reference online for non-commercial use.

Variants

[edit]

A variant of Coral 66 named PO-CORAL was developed during the late 1970s to early 1980s by the BritishGeneral Post Office (GPO), together withGEC, STC andPlessey, for use on theSystem X digital telephone exchange control computers. This was later renamed BT-CORAL whenBritish Telecom was spun off from the Post Office. Unique features of this language were the focus on real-time execution, message processing, limits on statement execution between waiting for input, and a prohibition on recursion to remove the need for astack.[citation needed]

References

[edit]
  1. ^"Gain the advantage with CORAL, CORAL+ and Context"(PDF).DXC Technology. September 2017.Archived(PDF) from the original on 23 January 2021. Retrieved29 December 2021.
  2. ^FM1600B Microcircuit Computer Ferranti Digital Systems(PDF). Bracknell, Berkshire, UK:Ferranti Limited, Digital Systems Department. October 1968 [September 1968]. List DSD 68/6.Archived(PDF) from the original on 19 May 2020. Retrieved19 May 2020.
  3. ^Gough, Jack (1993).Watching the skies: a history of ground radar for the air defence of the United Kingdom by the Royal Air Force from 1946 to 1975. HMSO. p. 264.ISBN 978-0-11-772723-6.
  4. ^Woodward, Philip M. (1970).Official Definition of CORAL 66.Her Majesty's Stationery Office (HMSO). pp. vii+58.ISBN 0114702217 – viaInternet Archive.
  5. ^"Coral 66 - Language Reference Manual - Manual - Computing History".www.computinghistory.org.uk. Archived fromthe original on 31 July 2023. Retrieved31 July 2023.
  6. ^Gorman, B (June 1978).The Coral 66 Compiler for Ferranti ARGUS 500 Computer (Report). Royal Signals and Radar Establishment. Technical Note 799.Archived from the original on 17 March 2021. Retrieved17 January 2018.
  7. ^ab"Lucid language may help European computers".New Scientist. 30 November 1972. p. 513. Retrieved8 April 2019.
  8. ^Metz, Cade (25 December 2012)."How the Queen of England Beat Everyone to the Internet".Wired.ISSN 1059-1028. Retrieved9 January 2020.
  9. ^Left, Sarah (13 March 2002)."Email timeline".The Guardian.ISSN 0261-3077. Retrieved9 January 2020.

External links

[edit]
Implementations
Technical
standards
Dialects
Formalisms
Community
Organizations
Professional
associations
Business
Education
Government
People
ALGOL 58
MAD
ALGOL 60
Simula
ALGOL 68
Comparison
^ = full name and link in older ALGOL version above
Categories:ALGOLALGOL 60
Retrieved from "https://en.wikipedia.org/w/index.php?title=CORAL&oldid=1318533073"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2026 Movatter.jp