Использование - язык - ад - Большая Энциклопедия Нефти и Газа, статья, страница 1
В истоке каждой ошибки, за которую вы ругаете компьютер, вы найдете, по меньшей мере, две человеческие ошибки, включая саму ругань. Законы Мерфи (еще...)

Использование - язык - ад

Cтраница 1


Использование языка Ада для подсистем и прикладных задач заманчиво не только из-за возможности работы с пакетами. Эта идея первоначально рассматривается в первой главе и подробно разбирается в гл. Задачи в языке Ада могут создаваться ( и прерываться) как статически, так и динамически. Они позволяют организовывать выполнение задач на конкурентной основе ( абстрактной или фактической), что достигается параллельной или конвейерной организацией задач. Задачи могут быть использованы для синхронизации других задач и для распределения работы между другими задачами.  [1]

В настоящее время1 использование языка Ада ограничено долговременными проектами, что обусловлено отсутствием хороших трансляторов с него.  [2]

Опыт автора по использованию языка Ада ( имея в виду вопросы, связанные с сильной типизацией) может быть оценен как очень положительный. Почти все семантические ошибки, такие, как несоответствие типов или ошибочные ссылки на объекты ( а подавляющее большинство этих ошибок пришлось на тот этап, когда автор осваивал язык Ада), были выявлены на этапе трансляции.  [3]

Но в первую очередь рассматривается пример, иллюстрирующий использование языка Ада.  [4]

Необходимо отметить, что, хотя основное место в настоящей статье и занимает обсуждение недостатков языка Ада, автор все же получил истинное наслаждение от использования языка Ада. Автор находит, что язык Ада - это хороший язык программирования. Опыт автора по использованию других языков программирования говорит о том, что язык Ада способствует созданию надежного, модульного и потенциально мобильного2 программного обеспечения.  [5]

Появление высококачественных трансляторов с языка Ада, обеспечивающих использование всех предоставляемых им возможностей, ожидается в 1984 г. 2 В настоящее время уже существует несколько хороших трансляторов с языка программирования, представляющего собой подмножество языка Ада. Вследствие огромной поддержки языка Ада ( и экономической, и политической) со стороны Министерства обороны США использование языка Ада станет, по всей видимости, чрезвычайно широким сразу же после появления высококачественных и надежных трансляторов с него.  [6]

В языке Ада обеспечивается также возможность обращения к программным единицам, написанным на других языках программирования, например на языке Фортран. Эта возможность особенно значима как с точки зрения экономичности, так и с точки зрения перехода от использования какого-либо другого языка программирования к использованию языка Ада, поскольку наличие этой возможности позволяет не потерять огромный объем программного обеспечения, уже написанного на других языках программирования. Однако только время покажет, насколько хорошо эта возможность будет реализована в различных трансляторах с языка Ада.  [7]

Языки Ада, Си и Паскаль по-прежнему сохраняют свое место и значение среди наиболее распространенных языков программирования. Язык Паскаль шире всего используется в университетах, в то время как язык Си стал доминирующим в промышленности языком программирования. Использование языка Ада постепенно расширяется по мере появления и распространения трансляторов с этого языка программирования, хотя необходимо отметить, что по широте его использования язык Ада до сих пор не идет ни в какое сравнение с языками Си и Паскаль.  [8]

Таким образом, ключевой вопрос может быть сформулирован следующим образом: является ли введение механизма рандеву наиболее правильным способом для организации параллельной обработки. Более того, автор считает, что ответ на этот вопрос не может быть получен до тех пор, пока не будет накоплен большой опыт по использованию языка Ада вообще и механизма рандеву в частности в различных практических приложениях. Однако автор считает необходимым провести некоторую аналогию, показывающую, что его опасения могут быть ошибочны. Когда появились первые сведения о языке Алгол 60, то программисты и специалисты в области трансляторов с различных языков программирования пришли в ужас от того, насколько неэффективной виделась им реализация таких, например, средств, как стек, динамические массивы, рекурсия. Проведенные в течение нескольких последующих лет исследования привели к нахождению достаточно эффективных способов реализации большинства из таких средств. Причем оказалось, что присущая этим способам неэффективность может считаться вполне приемлемой ценой за предоставляемые в распоряжение программиста возможности и удобства. Поэтому автор не удивится, если и с механизмом рандеву произойдет нечто похожее, но пока, к сожалению, этого еще не случилось.  [9]

Возможность такого сопоставления языков Ада, Си и Паскаль иногда оспаривается. При этом в качестве аргументов выдвигаются различия в философии этих языков программирования и изначальной ориентации на различные области применения, что делает их в значительной степени несопоставимыми. По нашему мнению именно различия в философии языков Ада, Си и Паскаль делают задачу их сравнения еще более интересной. Кроме того, несмотря на то, что языки Си и Паскаль изначально были ориентированы на конкретные, но различные области применения, в настоящее время каждый из них используется очень широко. Не вызывает сомнений и то, что использование языка Ада будет намного шире, чем изначально предначертанная для него область применения.  [10]

Но есть и еще одно соображение, которое, наверное, даже более важно. Язык Ада является результатом наиболее серьезной с точки зрения трудозатрат попытки разработки нового языка программирования из всех предпринимавшихся когда-либо. В разработке языка Ада в той или иной форме приняли участие лучшие программисты практически всего мира. И поэтому неудивительно, что язык Ада содержит ряд блестящих решений. И с этой точки зрения сравнение с языком Ада является просто необходимым не только для оценки самого языка Ада, но и для использования языка Ада в качестве эталона для сравнения.  [11]



Страницы:      1