Кіріспе

CORAL – Computer On line Real time Applications Language (Компьютерлік желідегі нақты уақытты қолданбалар тілі) – 1964 жылы Ұлыбританиядағы Ворстершир графтығындағы Малверн қаласында орналасқан Royal Radar Establishment (RRE) мекемесінде жасалған бағдарламалау тілі. Ол негізінен JOVIAL және одан кейін ALGOL тілдерінен әсер алды, бірақ екеуінің де толық көшірмесі емес. Ең көп танымал нұсқасы – CORAL 66, ол кейіннен И. Ф. Кьюри мен М. Гриффитс компьютерлік қолданбалар жөніндегі мекемелер аралық комитет (IECCA) қолдауымен әзірленді. Оның ресми сипаттамасын Вудвард, Уэзерлл және Горман 1970 жылы жариялады. 1971 жылы Қорғаныс министрлігі CORAL тілін болашақ әскери мақсаттар үшін ресми тіл деп бекітті, ал оны қолдау үшін CORAL компиляторларының техникалық талаптарға сай келуін қамтамасыз ету мақсатында стандарттау бағдарламасы енгізілді. Бұл тәсіл кейіннен АҚШ Қорғаныс министрлігі Ada тілін анықтағанда қолданылды.

Шолу

Coral 66 – ALGOL 60 негізінде жасалған, Coral 64, JOVIAL және Fortran-нан алынған кейбір ерекшеліктері бар жалпы мақсаттағы бағдарламалау тілі. Ол құрылымды жазба түрлерін (Pascal-дағыдай) қамтиды және деректерді шектеулі жадқа (Pascal-дағыдай) жинауға қолдау көрсетеді. Эдинбург IMP сияқты, ол тікелей (көмескі) құрастыру тілін қолдайды, сондай-ақ жақсы орындалу кезіндегі тексерулер мен диагностиканы ұсынады. Ол нақты уақыт есептеулер және кіріктірілген жүйелерге арналған, сондай-ақ шектеулі өңдеу қуаты бар компьютерлерде пайдалануға арналған, оның ішінде тек тұрақты нүктелік арифметиканы қолдайтын және динамикалық жадты бөлуді қолдамайтын компьютерлерде де қолданылады. Бұл тіл британдық әскери бағдарламалау үшін ведомствоаралық стандарт болды, сондай-ақ британдық бақылау және автоматтандыру индустриясында азаматтық мақсаттар үшін кеңінен қолданылды. Ол 1971 жылдан бастап Ferranti және General Electric Company (GEC) компьютерлері үшін бағдарламалық жасақтама жазу үшін пайдаланылды. Сондай-ақ Interdata 8/32, PDP 11, VAX және Alpha платформалары мен HPE Integrity Server үшін; Honeywell үшін және Computer Technology Limited (CTL, кейін ITL) Modular 1 үшін де қолдау бар. Coral әртүрлі нақты уақыт жұмыстарына бағытталғандықтан, жалпы кеңсе деректерін өңдеуге қарағанда, stdio кітапханасының стандартына теңдес нәрсе болған жоқ. IECCA кез келген компилятормен бірге қарапайым кіріс/шығыс (I/O) жиынтығын ұсынды (Coral 66 Utility Programs құжатындағы «Coral 66 тіліндегі таңбалық деректердің кіріс/шығысы» деп аталады). Көптеген жасаушылар бұған Fortran және кейінірек C кітапханаларына Coral интерфейстерін жасау арқылы шешім тапты. CORAL-дың есептеу техникасына ең маңызды үлесі – коммерциялық компиляторлардың сапасын бақылауды күшейту болды. CORAL компиляторы IECCA-мен бекітілуі үшін, және осылайша компиляторды CORAL 66 компиляторы ретінде сатуға рұқсат алу үшін, кандидат компилятор 25 тесттік бағдарламадан және 6 өлшемдік бағдарламадан тұратын стандартты жиынтықты құрастырып, орындауы керек еді. Бұл процесс Британдық стандарттың (BS) 5905 бекіту процесінің бір бөлігі болды. Бұл әдістеме кейіннен АҚШ Қорғаныс министрлігі тарапынан Ada компиляторларын сертификаттау үшін байқалып, бейімделді. Coral 66 компиляторының бастапқы коды (BCPL-де жазылған) қалпына келтірілді және Корольдік кеңсесінің (HMSO) Coral 66 анықтамасы сканерленді; Қорғаныс министрлігінің патенттік бюросы Эдинбург компьютерлік тарихы жобасына лицензия берді, бұл оларға кодты және тілдік анықтаманы коммерциялық емес мақсаттар үшін онлайн жариялауға мүмкіндік берді.

Нұсқалар

Coral 66-ның PO CORAL деп аталатын түрі 1970-жылдардың соңы мен 1980-жылдардың басында британдық General Post Office (GPO), GEC, STC және Plessey компаниялары бірлесіп, System X цифрлық телефон станциясын басқару компьютерлерінде қолдану үшін жасалды. British Telecom поштадан бөлінгеннен кейін бұл тіл BT CORAL деп қайта аталды. Бұл тілдің ерекшеліктері – нақты уақыт режимінде жұмыс істеуге, хабарларды өңдеуге, кіріс күту кезіндегі операторлардың орындалуына шектеулер қою, сондай-ақ стек қажеттілігін болдырмау үшін рекурсияға тыйым салу болды.