Jump to content

ВЕСЕЛЫЙ

ВЕСЕЛЫЙ
Парадигмы Процедурный , императивный , структурированный.
Семья АЛГОЛ
Разработано Корпорация системного развития
Разработчик Партнеры по разработке программного обеспечения [1]
Впервые появился 1960 год ; 64 года назад ( 1960 )
Дисциплина набора текста статический , прочный , безопасный , структурный
Объем Лексический
Основные реализации
MVS , OpenVMS , macOS , Windows , Linux , SPARC , PowerPC , MIL-STD-1750A , другие устаревшие системы
Диалекты
J3, J3B-2, J73
Под влиянием
АЛГОЛ , МУДРЕЦ
Под влиянием
CMS-2 , Коралл 66 , СИМПЛ

JOVIAL язык программирования высокого уровня, основанный на ALGOL 58 , специализированный для разработки встроенных систем (специализированных компьютерных систем, предназначенных для выполнения одной или нескольких специализированных функций, обычно встроенных как часть более крупного и полного устройства, включая механические части). Это был основной язык системного программирования в 1960-х и 1970-х годах. [2]

История [ править ]

Руководство по компьютерному программированию для языка Jovial (J73)

JOVIAL был разработан как новый «высший уровень» [3] : 1  язык программирования, созданный в 1959 году командой System Development Corporation (SDC) под руководством Жюля Шварца для создания программного обеспечения для электроники военных самолетов. [4]

Название JOVIAL является аббревиатурой от Jules' Own Version. [5] международного алгебраического языка ; Международный алгоритмический язык (IAL) — это название, первоначально предложенное для ALGOL 58 . [6] По мнению Шварца, изначально язык назывался OVIAL , но по разным причинам этому сопротивлялись. Затем был предложен JOVIAL придаваемого J. , без всякого значения , Несколько в шутку было предложено назвать язык в честь Шварца, поскольку он был председателем собрания , и это неофициальное название прижилось. [7]

В 1960-е годы JOVIAL был частью серии L-проектов армии США , в частности ITT 465L Стратегической системы управления воздушным командованием ( проект Стратегической автоматизированной системы управления и контроля (SACCS)) из-за отсутствия в реальном времени вычислительного программирования . доступные языки. Около 95 процентов проекта SACCS, которым управляет компания International Telephone & Telegraph (ITT) с программным обеспечением, написанным в основном SDC, было написано на JOVIAL. Проект программного обеспечения занял два года и менее 1400 лет программиста, что составляет менее половины того же времени, что и SAGE . L-проект [8]

Кнопка с изображением JOVIAL как одного из языков, для которых компания Advanced Computer Techniques создала кросс-компиляторы.

В конце 1970-х и начале 1980-х годов ВВС США приняли на вооружение стандартизированный центральный процессор (ЦП) MIL-STD-1750A , и последующие программы JOVIAL были созданы для этого процессора. Несколько коммерческих поставщиков предоставили компиляторы и соответствующие инструменты программирования для создания JOVIAL для таких процессоров, как MIL-STD-1750A, включая Advanced Computer Techniques (ACT), TLD Systems , Proprietary Software Systems (PSS) и другие. [9] [10]

JOVIAL был стандартизирован в 1973 году с помощью MIL-STD-1589 и пересмотрен в 1984 году с помощью MIL-STD-1589C . Он до сих пор используется для обновления и обслуживания программного обеспечения на старых военных машинах и самолетах. Обычно используются три диалекта: J3, J3B-2 и J73.

По состоянию на 2010 год , 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, SPARC, VAX, 1750A, PowerPC, TI-9989, Zilog Z800x, Motorola 680x0, and IBM System 360, System 370, and System z. Further, DDC-I, which acquired parts of Advanced Computer Techniques, also lists JOVIAL compilers and related tools as of April 2020. [2]

Большая часть программного обеспечения, реализованного в JOVIAL, критически важна , и его обслуживание становится все сложнее. В декабре 2014 года сообщалось, что программное обеспечение, полученное на основе кода JOVIAL, созданного в 1960-х годах, стало причиной серьезного сбоя в Соединенного Королевства , инфраструктуре управления воздушным движением и что агентству, которое его использует, NATS Holdings , пришлось обучать своих специалистов. ИТ-специалистов в JOVIAL, чтобы они могли поддерживать это программное обеспечение, замену которого планировалось осуществить не раньше 2016 года. [11]

Влияние [ править ]

Языки, на которые повлиял JOVIAL, включают CORAL , SYMPL , Space Programming Language (SPL) и в некоторой степени CMS-2 . [12] Интерактивное было подмножество JOVIAL под названием TINT, похожее на JOSS, разработано в 1960-х годах. [7]

Особенности [ править ]

JOVIAL включает в себя функции, отсутствующие в стандартном ALGOL, такие как элементы (теперь называемые структурами ), массивы элементов, переменные состояния (теперь называемые перечислениями ) и встроенный язык ассемблера . [13]

Он также включал положения для «упакованных» данных в таблицах. Упаковка таблиц означает распределение элементов внутри записи по словам хранения (битам в единице данных). Это было важно с учетом ограниченности памяти и хранилища вычислительных систем эпохи ЮЖИАЛА.

Коммуникационный пул (COMPOOL) в Jovial аналогичен библиотекам заголовочных файлов для таких языков, как PL/I и C.

Приложения [ править ]

Известные системы, использующие встроенное программное обеспечение JOVIAL, включают:

Пример [ править ]

Следующий пример взят из Руководства по компьютерному программированию для языка JOVIAL (J73). [3] : 12 

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

В этом примере определяется процедура с именем RETRIEVE который принимает входной аргумент целого числа без знака CODE и выходной аргумент с плавающей запятой VALUE. Он ищет массив из 1000 элементов. TABCODE для записи, которая соответствует CODE, а затем устанавливает переменную с плавающей запятой VALUE к элементу массива TABVALUE имеющий одинаковый индекс соответствующего массива. Если соответствующий элемент не найден, VALUE установлено на −99999.0.

Ссылки [ править ]

  1. ^ «Software Engineering Associates, Inc. (SEA)» .
  2. Перейти обратно: Перейти обратно: а б «Зрелые системы разработки, проверенные на сотнях приложений» . ДДК-I . Финикс, Аризона. 2020 . Проверено 22 апреля 2020 г.
  3. Перейти обратно: Перейти обратно: а б Softech, Inc. (июнь 1981 г.). Руководство по компьютерному программированию для языка JOVIAL (J73) (PDF) . Рим, Нью-Йорк: Римский центр развития авиации. п. 1. Архивировано (PDF) из оригинала 29 июля 2018 г. Проверено 16 мая 2018 г.
  4. ^ Шварц, Жюль И. (7 апреля 1989 г.). «Интервью устной истории с Жюлем И. Шварцем» . Институт Чарльза Бэббиджа . Университет Миннесоты. Шварц работал в корпорации RAND над различными проектами, связанными с обороной, в частности над полуавтоматической наземной средой (SAGE) и JOHNNIAC . Когда РЭНД организовал Корпорацию системного развития , Шварц перешел в новую компанию. Большую часть интервью Шварц описывает свое сотрудничество с SAGE, свое участие в работе в компьютерной лаборатории над разделением времени для AN/FSQ-32 компьютера , компьютерных сетей , проектов систем управления (таких как TDMS) и свое взаимодействие с JCR. Ликлайдер , Лоуренс Дж. Робертс и Роберт Сакстон Тейлор . Он обсуждает свою последующую должность в Computer Sciences Corporation .
  5. ^ «Эд и Кей, весёлые пионеры» . jovial.com . Проверено 23 февраля 2021 г.
  6. ^ Шоу, Кристофер Дж. (1 декабря 1963 г.). «Спецификация JOVIAL» . Коммуникации АКМ . 6 (12): 721–736. дои : 10.1145/763973.763978 . ISSN   0001-0782 . S2CID   1427629 .
  7. Перейти обратно: Перейти обратно: а б Шварц, Жюль И. (8 августа 1978 г.). «Развитие Джовиала» (PDF) . Уведомления ACM SIGPLAN . 13 (8): 203. дои : 10.1145/960118.808385 . S2CID   17913060 . Проверено 28 января 2015 г.
  8. ^ Кэмпбелл-Келли, Мартин (2003). От бронирования авиабилетов до Sonic the Hedgehog: история индустрии программного обеспечения . Кембридж, Массачусетс: MIT Press . стр. 46-7 . ISBN  0-262-03303-8 .
  9. ^ Шахтер, Оскар (7 мая 2004 г.). «Устное историческое интервью с Оскаром Шахтером» . Институт Чарльза Бэббиджа . Университет Миннесоты: 17.
  10. ^ «JOVIAL (J73) и инструменты поддержки программного обеспечения ISA MIL-STD-1750A». Информационный бюллетень Ada–JOVIAL . Центр языкового контроля высшего порядка, авиабаза Райт-Паттерсон, ВВС США. Сентябрь 1993 г., стр. 21–24.
  11. ^ Рейнер, Гордон (12 декабря 2014 г.). «Хаос полетов в Великобритании: компьютеры управления воздушным движением используют программное обеспечение 1960-х годов» . Дейли Телеграф . Проверено 21 апреля 2020 г.
  12. ^ Руководство по обучению основам цифрового компьютера, NAVEDTRA 10088-B , ВМС США , 1978 г.
  13. ^ Халанг, Вольфганг А.; Стоенко, Александр Дмитриевич (1991). Построение предсказуемых систем реального времени . Спрингер Верлаг. п. 31. ISBN  978-1-4615-4032-8 .
  14. ^ «Рад сгладить переход ВВС США на Аду» . Оборонная электроника . 1 марта 1984 г. Архивировано из оригинала 12 октября 2012 г. Проверено 28 января 2015 г.
  15. ^ «AN/APG-73, Энциклопедия истребителя» . Архивировано из оригинала 5 ноября 2004 г.

Внешние ссылки [ править ]

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 774cd855da29aecc918449f1793edb7e__1691848200
URL1:https://arc.ask3.ru/arc/aa/77/7e/774cd855da29aecc918449f1793edb7e.html
Заголовок, (Title) документа по адресу, URL1:
JOVIAL - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)