Ада (язык программирования)
Ада | |
---|---|
![]() | |
Семантика |
параллельное |
Класс языка |
язык программирования широкого спектра императивный, объектно-ориентированный и язык программирования |
Тип исполнения | компилируемый |
Появился в |
1980 |
Автор |
|
Разработчик | Жан Ишбиа и С. Такер Тафт[вд][1] |
Выпуск | Ada 2012 (10 декабря 2012 ) |
Тестовая версия | Ada 2012[3] (ноябрь 2011 ) |
Система типов |
строгая, безопасная, nominative |
Основные реализации |
AdaCore GNAT, MapuSoft Ada-C/C++ Changer (AdaMagic)[4], Green Hills Software Optimising Ada 95 compiler, PTC ObjectAda[5], DDC-I Score |
Диалекты | SPARK, Ravenscar profile |
Испытал влияние | (Ada 2012) |
Повлиял на | C++, Eiffel, M10, M9.3, MAYA, Seed7, PL/SQL, Nim |
Сайт | adaic.org |
![]() |
А́да (Ada) —
Особенности
В исходном варианте, стандартизованном в 1983 году, Ада — это
Синтаксис
Язык регистро-независим.
Язык имеет развитую систему типов, как встроенных, так и порождаемых программистом. Есть множество способов создания новых типов, язык поддерживает два разных понятия: «подтип» и «производный тип». Переменные типа и подтипа совместимы, переменные типа и его производного типа — нет.
В процедурах и функциях поддерживаются входные и выходные параметры, передача параметров по имени, параметры со значениями по умолчанию. Поддерживается
Программы — модульные, механизм контроля импорта-экспорта описаний между модулями включает две разные директивы: одну для подключения другого модуля (with
), другую — для импорта его описаний (use
). Также существует возможность переименовать модуль при импорте (rename
) — этот вариант позволяет использовать для обозначения пакета более удобные программисту идентификаторы. Пакеты (один из типов модулей) могут содержать заголовок и приватную часть — то, что содержится в ней, не экспортируется и другим модулям недоступно. Поддерживается механизм обобщённых (generic) модулей: пакетов, процедур и функций, позволяющих описывать алгоритмы обработки данных без указания конкретного типа.
В язык встроены конструкции поддержки
Для удовлетворения требованиям надёжности язык построен таким образом, чтобы как можно большее количество ошибок обнаруживалось на этапе
Hello, world!
Пример программы «Hello, world!»:
with Ada.Text_IO;
procedure Hello is
use Ada.Text_IO;
begin
Put_Line("Hello, world!");
end Hello;
Здесь для применения функции Put_Line
содержащий её пакет Ada.Text_IO
импортируется с помощью конструкции use, что даёт возможность вызывать функцию по имени без квалификации — указания в вызове имени пакета, содержащего функцию.
История
Разработка языка была проведена в рамках международного конкурса, организованного и профинансированного министерством обороны США. Целью разработки было получение языка программирования, который мог бы стать единым для разработки проектов по заказам военного ведомства, главным образом, для разработки встроенных систем военного назначения и для больших военных компьютеров (на базе процессора iAPX 432 от Intel). Работа началась в 1975 году с формирования набора требований к языку, который бы в полной мере удовлетворил разработчиков систем указанного типа. Первоначальный список требований, выпущенный под кодовым наименованием «Strawman» («Соломенный»), был представлен на рецензию в ряд организаций и фирм, в течение двух лет последовательно уточнялся, пройдя через «Woodenman» («Деревянный»), «Tinman» («Оловянный»), «Ironman» («Железный») и в конечном счёте превратившись в итоговый документ под названием «Steelman» («Стальной»). «Steelman» был выпущен в июне 1978 года [DoD 1978][9].
Ещё до окончательного завершения формирования требований анализ показал, что ни один из имеющихся языков программирования не удовлетворяет требованиям в достаточной мере, так что было принято решение разработать новый язык. Конкурс на его создание был объявлен в
В 1983 году язык был официально стандартизован ANSI. Стандарт языка ANSI/MIL-STD-1815-A-1983 был утверждён 17 февраля 1983 года. Министерство обороны США сделало наименование «Ada» зарегистрированной торговой маркой, запретив выпускать трансляторы языка, не прошедшие официальную процедуру тестирования на соответствие стандартам. Процедура состояла в прогоне через тестируемый компилятор большого количества (более 1000) тестовых программ (так называемый комплект ACVC), для каждой из которых был однозначно определён результат тестирования: либо удачная компиляция, либо выдача вполне конкретного сообщения об ошибке. Тестирование проводилось по принципу «всё или ничего» — при ошибке в обработке хотя бы одного тестового примера компилятор считался не прошедшим тест, причём тестирование было действительно только на той аппаратной и программной платформе, на которой оно проводилось. Таким образом была в зародыше подавлена возможность образования диалектов языка Ада.
В
К 1990 году в мире существовало уже около 200 компиляторов, соответствовавших стандарту языка Ада.
В 1995 году был принят новый стандарт Ады, известный как Ada95. В язык были введены средства объектного программирования. Кроме того, язык был дополнен более развитыми средствами для взаимодействия с программами, написанными на других языках.
В марте 2007 года опубликованы[10] изменения в стандарте Ады. Они коснулись, в основном, возможностей объектно-ориентированного программирования: введены интерфейсы, принят обычный для большинства гибридных языков синтаксис вызова метода, внесён ещё ряд дополнений.
В 2012 году ISO принят и опубликован новый стандарт языка[11].
Ада в СССР и России
![]() | Эта статья описывает ситуацию применительно лишь к одному региону, возможно, нарушая при этом правило о взвешенности изложения. |
В 1980-х годах была организована рабочая группа по языку Ада при
В
После распада СССР работа по распространению Ады практически прервалась. Правда, были приняты три программы развития разработки ПО на Аде (в
- Станция документальной связи МО РФ. Основной задачей является обеспечение обмена документальной информацией в сетях передачи данных Министерства обороны Российской Федерации. Программно-аппаратный комплекс был совместно разработан Производственной организацией «Вычислительная техника и средства автоматизации» (аппаратное обеспечение) и группой программистов сектора вне трасс Северо-Кавказского центра управления воздушным движением «Стрела». Программное обеспечение комплекса написано на языке программирования Ada с использованием компилятора GNAT. Поддержка распределенных вычислений осуществляется дополнительным компонентом GLADE.
- Комплекс стандартного пилотажно-навигационного и связного оборудования для российского самолета-амфибии Бериев Бе-200. Разработка проведена Научно-исследовательским институтом авиационного оборудования г. Жуковский совместно с американской фирмой Allied Signal, Флорида, США. Использован комплекс разработки ада-систем фирмы DDC-I на платформе Intel 80486.
Критика
С момента появления Ада подвергся критике некоторых признанных авторитетов в области разработки языков программирования, в первую очередь — за сложность синтаксиса и большой объём. В частности, язык критиковали
Дейкстра усомнился, что язык такой сложности, как Ада, может быть обозрим и управляем.
Если Ada собирается выдать стандарт, желательно, чтобы он был недвусмысленно документирован. По меньшей мере две группы попытались сделать это; в результате обе выдали около 600 страниц формального текста. Это гораздо больше, чем необходимо, чтобы удостовериться в невозможности хотя бы твердо установить, что оба документа определяют один и тот же язык. Ошибка очевидной неуправляемости этих двух документов кроется не в двух группах, составивших их, не в принятом ими формализме, а лишь в самом языке: сами не обеспечив формального определения, могут ли его разработчики скрыть, что они предлагают неуправляемого монстра. То, что Ada уменьшит проблемы программирования и увеличит надёжность наших разработок до приемлемых границ, — это лишь одна из тех сказок, в которые могут поверить только люди с военным образованием.
Хоар выразил своё сожаление тем, что «погремушки и побрякушки возобладали над фундаментальными требованиями надёжности и безопасности» и предостерёг от «армады ракет, летящих не туда из-за не обнаруженной вовремя ошибки в компиляторе Ады».
Вызывает сомнения и процедура проверки соответствия компилятора стандарту языка путём тестирования. Из общих соображений ясно, что тестирование может найти несоответствие, но не может гарантировать правильность. Практическим подтверждением этого является тот факт, что сертифицированные компиляторы, будучи проверены на другом наборе тестов, обнаруживали несоответствие стандарту[13].
Сторонники Ады утверждают, что единственная альтернатива большому и сложному языку в больших проектах — это применение нескольких компактных языков, неизбежно порождающее проблемы с совместимостью, для избавления от которых и была придумана Ада. Они замечают также, что представление о сложности разработки на Аде верно лишь отчасти: написание простой программы на Аде действительно требует больше времени, чем на других, менее формальных языках, типа
Распространение, перспективы
На практике оказалось, что Ада, заняв предназначенную ей нишу в военных и родственных им разработках встроенных систем, за пределы данной ниши так и не вышла ни на Западе, ни в СССР, ни на постсоветском пространстве. Причин этому называется много. Противники языка упирают на его сложность и недостатки, сторонники говорят, прежде всего, об объективных обстоятельствах появления языка и негативных сторонах процесса его внедрения. По мнению С. И. Рыбина, старшего научного сотрудника НИВЦ МГУ, консультанта компании AdaCore EU, эксперта по языку Ада рабочей группы ISO по стандарту языка[13], своими неудачами Ада обязана двум основным причинам:
- Во время проектирования языка Пентагон предполагал, что всё новое ПО будет создаваться только на Аде. Из-за этого Ада получила крайне примитивные средства взаимодействия с программами на других языках. На практике оказалось, что написать на Аде вообще всё — нереально (хотя бы потому, что возникала необходимость взаимодействовать с готовыми разработками на других языках). Поэтому в отраслях, где не было жёсткого требования «писать только на Аде», предпочитали другие языки, более приспособленные к многоязычной среде. В стандарте 1995 года проблема взаимодействия с другими языками была решена, но время оказалось упущено.
- Парадоксально, но распространению Ады помешала финансовая и организационная поддержка Пентагона. Программы на Аде, написанные для военных, работали на самой мощной вычислительной технике, какая была доступна, поэтому разработчики компиляторов заботились в первую очередь о прохождении тестов ACVC, и только потом — об эффективности компилятора и создаваемого им кода. В начале 1980-х годов начался бум микрокомпьютеров, и трансляторы для распространённых языков (Паскаля, Си, Бейсика) были оперативно оптимизированы под маломощные системы. Для Ады стимула в такой модернизации не оказалось, в результате ставшие через несколько лет основной массой мирового вычислительного парка персональные компьютеры оказались без качественного транслятора Ады. Естественно, что Ада потеряла этот сегмент рынка. Лишь относительно недавно появился компилятор GNAT, качественный и производительный, но и здесь время оказалось упущено.
Тем не менее, по некоторым осторожным прогнозам, с удешевлением аппаратуры и распространением встроенных систем со сложным ПО рынок для программ на Аде может заметно вырасти:
… Ада достаточно прочно занимает нишу больших встроенных систем с повышенными требованиями к надежности, и едва ли она уступит кому-либо эту нишу в обозримом будущем. Рост производительности аппаратных компонент при одновременном падении их стоимости ведет к тому, что встроенные системы становятся все сложнее и сложнее, и может так оказаться, что потенциальный рынок для Ада-приложений вскоре существенно вырастет.
— Интервью С.И. Рыбина[13]
Кроме того, Ада имеет, пусть и весьма ограниченное, применение в сфере высшего образования. В МГУ и Харьковском университете читаются спецкурсы по Аде. Однако, по словам того же С. И. Рыбина,
… сейчас на постсоветском пространстве в области программной индустрии и образования сложился очевидный порочный круг: в индустрии практически не знают про Аду, соответственно, со стороны индустрии нет запроса к образованию по подготовке Ада-специалистов, и из вузов в индустрию приходят новые люди, которые практически ничего не знают про Аду.
Операционные системы
На Аде написан ряд
Ранее существовали и другие операционные системы, написанные на Аде, среди них — BiiN, Pulse, AdaOS.
В настоящее время развивается операционная система Muen[15], написанная на Ada и SPARK, используются учебные ОС Ada Bare bones[16], Microkernel Ada (TAMP[17]).
Компиляторы Ады
Название | Компания | Версия | Целевые платформы | Сайт |
---|---|---|---|---|
Компиляторы проекта DragonLace (GNAT AUX и будущие компиляторы DRACO Ada) | проект сообщества | Ада - все версии языка; версии компиляторов: 4.9.х или 6.3.х (для различных платформ) | LLVM, DragonFly, FreeBSD, NetBSD, OpenBSD, OmniOS, Android | http://www.dragonlace.net/ Архивная копия от 31 марта 2018 на Wayback Machine |
Ada-C/C++ Changer (на технологии AdaMagic) | MapuSoft | Ада 83, Ада 95, подмножество Ада 2005 | Си, C++ | www.mapusoft.com Архивная копия от 21 ноября 2016 на Wayback Machine |
Ada/Ed | Нью-Йоркский университет | Ада 83 | MS-DOS x86, UnixWare | www2.informatik.uni-stuttgart.de |
AdaMagic | SofCheck | Ада 95 | ? | www.sofcheck.com Архивная копия от 4 марта 2021 на Wayback Machine |
AdaMULTI | Green Hills Software | Ада 83, Ада 95, Си++, Фортран
|
Solaris SPARC, GNU/Linux x86, Windows | www.ghs.com Архивная копия от 15 января 2021 на Wayback Machine |
DEC Ada | Hewlett Packard
|
Ада 83 | OpenVMS | h71000.www7.hp.com |
GNAT | AdaCore | Ада 83, Ада 95, Ада 2005, Ада 2012, Си | Solaris SPARC, Linux x86/x86-64, Windows, Java Virtual Machine, другие | libre.adacore.com Архивная копия от 12 февраля 2005 на Wayback Machine |
ICC | Irvine Compiler Corporation | Ада 83, Ада 95 | SGI IRIX , Windows
|
www.irvine.com Архивная копия от 2 мая 2009 на Wayback Machine |
Janus/Ada | RR Software | Ада 83, Ада 95 | SCO, UnixWare, Interactive, MS-DOS, Windows | www.rrsoftware.com Архивная копия от 21 января 2022 на Wayback Machine |
MAXAda | Concurrent | Ада 95 | Linux/Xeon, PowerPC | www.ccur.com Архивная копия от 3 сентября 2011 на Wayback Machine |
ObjectAda | PTC | Ада 95, Ravenskar[англ.] | Solaris SPARC, VxWorks, HP-UX, IBM AIX, Linux, Windows, Java Virtual Machine / Java с поддержкой браузеров | www.ptc.com Архивная копия от 10 октября 2016 на Wayback Machine |
PowerAda | OC Systems | Ада 83, Ада 95 | Linux, AIX (Ада 95); IBM System 370/390 (Ада 83) | www.ocsystems.com Архивная копия от 24 августа 2010 на Wayback Machine |
Rational Apex | IBM Rational | Ада 83, Си, Си++ | Solaris SPARC, Linux | www-01.ibm.com Архивная копия от 27 сентября 2009 на Wayback Machine |
SCORE | DDC-I | Ада 83, Ада 95, Си, Фортран | Solaris SPARC, Windows | www.ddci.com |
XD Ada | SWEP-EDS | Ада 83 | OpenVMS Alpha/VAX | www.swep-eds.com |
XGC Ada | XGC Software | Ада 83, Ада 95, Си | Solaris SPARC, PC Linux, Windows (Cygwin) | www.xgc.com Архивировано 9 февраля 2013 года. |
LLVM ( Low Level Virtual Machine )
|
LLVM Developer Group | на большинство UNIX-подобных систем и Windows | llvm.org | |
A# (порт Ada на платформу Microsoft .NET )
|
Академия ВВС США (GNU) | Windows | asharp.martincarlisle.com Архивная копия от 2 июля 2011 на Wayback Machine |
За исключением LLVM, GNAT и XGC (для некоторых платформ) вышеперечисленные компиляторы являются платными. Некоторые фирмы, например Aonix, предлагают бесплатные демонстрационные версии, ограниченные либо по времени использования, либо по функциональности.
Среды разработки NetBeans[18] и Eclipse имеют плагины для работы с Ада.
Влияние
Синтаксис Ады в значительной степени воспроизведён в таких языках, как PL/SQL (и впоследствии PL/pgSQL), VHDL, SPARK.
В языках программирования Е[19] и Clarity[20], затем - во множестве других: например, в языках Erlang, Fortress, Chapel, X10, D и Go получили дальнейшее развитие идеи распределённых, многозадачных, многопоточных вычислений, которые реализованы самим языком, а не внешними библиотеками, впервые широко применённые на практике именно в языке Ада.
Инструменты
- Open-DO Архивная копия от 1 апреля 2018 на Wayback Machine — проект по подготовке специализированных квалифицированных программных инструментов с открытым исходным кодом и сертифицируемых компонентов для Open-DO («DO-178C») — новой редакции стандарта авионики для бортового программного обеспечения.
Архивы материалов
- Ada Programming Language Materials, 1981–1990. Charles Babbage Institute, University of Minnesota. Включает литературу по программным продуктам, разработанным для языка Ada, публикации правительства США, включая отчеты по проектам Ada 9X, технические отчеты, рабочие документы, информационные бюллетени; и информацию о группе пользователей.
- Public Ada Library (PAL) — это бесплатный репозиторий сотен мегабайт информации, относящийся к Ada. PAL содержит программы, компоненты, инструменты, общую информацию и учебные материалы по Ada. Имеет известный канонический адрес местонахождения: [1] (WUArchive – Washington University Public Archives Address ... [128.252.135.4]), который, однако, не всегда доступен в сети. Walnut Creek выпускал в 1995 г. CDROM (2 шт.), которые являются полной копией Public Ada Library (PAL) по состоянию на 28 апреля 1995 года. Образы этих дисков доступны[21] в Архиве Интернета.
Организации
- Ada Conformity Assessment Authority (ACAA)[22] - управление по оценке соответствия Ada - отвечает за управление оценками соответствия Ada стандартам.
Примечания
- ↑ 1 2 3 https://blog.adacore.com/author/taft
- ↑ https://www.adahome.com/Rogues/taft.html
- ↑ Ada 2012 Language Reference Manual . Ada-auth.org. Дата обращения: 27 января 2014. Архивировано 28 февраля 2011 года.
- ↑ MapuSoft Ada-C/C++ Changer (AdaMagic) . MapuSoft (22 июля 2016). Дата обращения: 12 февраля 2017. Архивировано 21 ноября 2016 года.
- ↑ PTC ObjectAda . PTC. Дата обращения: 12 февраля 2017. Архивировано 10 октября 2016 года.
- ↑ Справочное руководство по языку Ада. 4.6. Преобразование типов. Дата обращения: 26 июля 2019. Архивировано 1 января 2019 года.
- ↑ Справочное руководство по языку Ада 83. Глава 1.3. Цели и источники разработки . Дата обращения: 22 ноября 2007. Архивировано 7 сентября 2008 года.
- ↑ Вадим Станкевич. Леди Ада . Дата обращения: 22 ноября 2007. Архивировано 22 мая 2008 года.
- ↑ Steelman document . Дата обращения: 23 марта 2019. Архивировано 23 марта 2019 года.
- ↑ Обновлённый стандарт на сайте iso.org . Дата обращения: 10 апреля 2008. Архивировано 2 мая 2007 года.
- ↑ Ada 2012 . Дата обращения: 4 ноября 2016. Архивировано 12 сентября 2016 года.
- ↑ Брябрин В. М. Программное обеспечение персональных ЭВМ. М.: Наука, 1988.
- ↑ 1 2 3 Интервью С. И. Рыбина . Дата обращения: 10 апреля 2008. Архивировано 15 мая 2008 года.
- ↑ Stephen Zeigler, Comparing Development Costs of C and Ada. Архивировано 4 апреля 2007 года.
- ↑ Muen | SK for x86/64 (англ.). muen.codelabs.ch. Дата обращения: 13 декабря 2017. Архивировано 12 ноября 2020 года.
- ↑ Ada Bare bones - OSDev Wiki (англ.). wiki.osdev.org. Дата обращения: 13 декабря 2017. Архивировано 13 декабря 2017 года.
- ↑ Luke A. Guest. tamp: The Ada Microkernel Project. — 2017-12-05. Архивировано 11 июня 2018 года.
- ↑ Ada Plugins for NetBeans . Дата обращения: 2 октября 2010. Архивировано 5 августа 2017 года.
- ↑ Mark S. Miller. The ENative Project . erights.org. Дата обращения: 7 января 2017. Архивировано 2 февраля 2017 года.
- ↑ Brian T. Lewis, L. Peter Deutsch, Theodore C. Goldstein, Brian T. Lewis, Theodore C. Goldstein. Clarity MCode: A retargetable intermediate representation for compilation // ACM SIGPLAN notices. — 1995-01-01. — Т. 30. — С. 119–128. Архивировано 8 мая 2013 года.
- ↑ The Walnut Creek CD-ROM Collection : Free Software : Free Download, Borrow and Streaming : Internet Archive (англ.). archive.org. Дата обращения: 1 октября 2018.
- ↑ Ada Conformity Assessment . www.ada-auth.org. Дата обращения: 4 февраля 2019. Архивировано 10 марта 2019 года.
Ссылки
- Василий Фофанов, Сергей Рыбин. Язык Ада — двадцать лет спустя Архивная копия от 6 декабря 2010 на Wayback Machine
- Е. М. Фрейдер, М. Ю. Фрейдер. Опыт использования языка Ада Архивная копия от 8 июля 2009 на Wayback Machine
- Появление языка Ада Архивная копия от 28 февраля 2009 на Wayback Machine
- Who’s Using Ada?Real-World ProjectsPowered by the Ada Programming LanguageNovember 2014 Архивная копия от 31 августа 2015 на Wayback Machine
- В. О. Мищенко, Украина, Харьков. Язык Ада возрождает свои позиции в постсоветских странах: взгляд из Харьковского национального университета // Компьютерная газета. — Минск: ИД «Нестор», 2010. — № 47..
Литература
- Вегнер П. Программирование на языке Ада. — М.: «Мир», 1983. — С. 240. (недоступная ссылка)
- Бар Р. Дж. Язык Ада в проектировании систем. — М.: «Мир», 1988. — С. 318. (недоступная ссылка)
- Гавва А. Адское программирование.Ada 95.Компилятор GNAT.. — 2004. — С. 431. Архивная копия от 11 августа 2015 на Wayback Machine
- John Barnes. Ada 2012 Rationale. — 2011,2013. — С. 215.
- Роберт В Себеста. Основные концепции языков программирования = Concepts of Programming Languages. — 5-е изд. — М.: «Вильямс», 2001. — С. 672. — ISBN 5-8459-0192-8.
- Языки программирования Ада, Си, Паскаль = Comparing and Assessong Programming Languages Ada, C, and Pascal / А.Фьюэр, Н.Джехани. — М.: Радио и Связь, 1989. — 368 с. — 50 000 экз. — ISBN 5-256-00309-7.
- Ada Reference Manual, ISO/IEC 8652:1995(E) with Technical Corrigendum 1 and Amendment 1 . Ada Resource Association. Архивировано 5 декабря 2013 года.
- Ada для программистов C++ или Java (Ada for the C++ or Java Developer)
- Адское программирование (Материалы сайта). — 2016.
- Coronado Enterprises (Copyright © 1988-1998). ADA 95 TUTORIAL Архивная копия от 1 апреля 2018 на Wayback Machine
- Ada95: The Craft of Object Oriented Programming Архивная копия от 27 марта 2018 на Wayback Machine
- Ada95 Lovelace Tutorial Home Page Архивная копия от 20 апреля 2018 на Wayback Machine - общедоступный краткий онлайн-учебник и его ещё более краткий русский перевод "Уроки Ады Архивная копия от 31 марта 2018 на Wayback Machine".
- Джон Барнс, Бэн Брасгол. Безопасное и надежное программное обеспечение на примере языка Ада 2012 и SPARK 2014 (русский перевод) Архивная копия от 31 марта 2018 на Wayback Machine
- Список литературы в теме "Ada books for 1996 Архивная копия от 5 февраля 2018 на Wayback Machine" на форуме, составленный пользователем Kenneth Ma с этого форума.
- A Detailed Description of the GNU Ada Run Time Архивная копия от 27 сентября 2018 на Wayback Machine (Version 1.0). Integrated with the GNAT 3.15p sources and the Annotated Ada Reference Manual (Technical Corrigendum 1). Copyright (c) Javier Miranda [email protected]. Applied Microelectronics Reseach Institute University of Las Palmas de Gran Canaria Canary Islands. Spain.2002. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any latter published by the Free Software Foundation. (Подробное описание времени выполнения GNU Ada (Версия 1.0). Интегрировано с источниками GNAT 3.15p и справочным руководством Annotated Ada (Техническое исправление 1). Авторское право (c) Хавьер Миранда [email protected] (Права на текст также определены условиями лицензии GNU Free Documentation License, версии 1.1 или любой более поздней версии, опубликованной Free Software Foundation). Прикладная микроэлектроника Исследовательский институт Университет Лас-Пальмас-де-Гран-Канария Канарские острова Испания. 2002.).
- Генерация случайных чисел в Ada 9X[1].
- Стандарты
- ISO/IEC 8652:1987 — Programming languages — Ada
- ГОСТ 27831-88 — «Язык программирования АДА» (соответствует стандарту ISO 8652:1987)
- ISO/IEC 8652:1995 — Information technology — Programming languages — Ada (Ada95)
- ISO/IEC 8652:2012 — Information technology — Programming languages — Ada (текущая редакция стандарта)
Данные в этой статье приведены по состоянию на 2007 год. |
![]() | В другом языковом разделе есть более полная статья Ada (programming language) (англ.). |
- ↑ Random Number Generation in Ada 9X . ftp.mcs.anl.gov. Дата обращения: 4 февраля 2019. Архивировано 7 августа 2021 года.