Что такое графоман в русском языке определение. Что такое графоман: определение

Если спросить отечественного ИТ-специалиста: «Что такое Ада?», большинство лишь удивленно пожмет плечами, а кто-то даже скажет, что это мертвый язык, когда-то придуманный Пентагоном, а ныне практически не используемый. На самом же деле Ада и сегодня - вполне благополучный и активно применяемый в различных областях язык программирования. Правда, большинство российских программистов знают о нем мало.

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

Несмотря ни на что, в отдельных областях техники Россия все еще «впереди планеты всей». И одна из них - конструирование и производство самолетов-амфибий. Всемирно признанным лидером в этой области является ТАНТК им. Г.М. Бериева. Недавно это предприятие приобрело средства разработки бортового программного обеспечения на базе языка Ада для использования при модернизации своей последней модели Бе-200.

Между тем, большинство отечественных ИТ-специалистов в лучшем случае ничего не знают о языке Ада, в худшем же - имеют совершенно неверное представление об Аде как о языке-монстре, некогда придуманном Пентагоном для разработки военных систем, а ныне окончательно забытом.

Немного истории

Официальным днем рождения языка программирования Ада можно считать 17 февраля 1983 года - дату утверждения стандарта ANSI/MIL-STD-1815-A-1983.

Технические и административные меры, предпринятые Минобороны как часть проекта по созданию и внедрению Ады, полностью предотвратили появление и распространение диалектов языка. С 1983 года и по настоящее время все индустриальные реализации поддерживают действующий стандарт Ады. Когда же речь заходит о подмножествах Ады, то эти подмножества определяются не реализацией, а стандартами разработки конкретного класса систем.

В 1987 году стандарт ANSI без единого изменения был утвержден в качестве стандарта ISO (ISO/IEC 8652), а когда в начале 90-х годов назрела необходимость пересмотра стандарта, работа по пересмотру также была проведена под управлением и на средства Министерства обороны США. Стартовал новый международный проект, который завершился утверждением в конце 1994-го и публикацией в начале 1995 года новой версии стандарта ISO/IEC 8652. Именно этот документ и служит сегодня определением языка программирования Ада.

В СССР в начале 80-х годов была образована Рабочая группа по языку программирования Ада при Государственном комитете по науке и технике. Тщательно собиралась и анализировалась вся открытая информация о проекте, а усилиями специальных служб добывалась и закрытая информация. Были организованы проекты по реализации Ады для практически всех использовавшихся тогда архитектур ЭВМ, и некоторые из них оказались весьма успешными. Распад СССР положил конец этой деятельности. Сегодня Ада используется в России и СНГ отдельными энтузиастами.

Что такое Ада

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

Пример такой просто необходим для того, чтобы опровергнуть достаточно распространенный миф о том, что Ада - большой, сложный и «тяжелый» язык, пригодный лишь для написания сверхбольших и сверхсложных систем. На самом же деле, Ада может применяться для разработки небольших и средних программ с тем же успехом, как и современные клоны Си, Паскаля, Бейсика и Java. Так, классический пример программы «Hello, World!» выглядит на Аде следующим образом:

Легко видеть, что код на Аде похож на код на Паскале, который был выбран в качестве его прототипа. Первая строка описывает связь данного компилируемого модуля с другими модулями - указывается, что подпрограмма Hello_World должна компилироваться совместно с модулем Ada.Text_IO, который является компонентом предопределенной библиотеки.

Следующая программа определяет два асинхронных процесса :

В разделе локальных объявлений процедуры Tasking_Example описывается задача Outputter (строка 6, строки с 8 по 17 содержат тело этой задачи). Когда управление в процессе, соответствующем процедуре Tasking_Example, доходит до строки 20, перед тем, как выполнить этот первый оператор, запускается процесс, соответствующий задаче Outputter, после чего два этих процесса живут и асинхронно выполняются независимо друг от друга. Выполнение оператора задержки (строки 14 и 20) состоит в приостановке соответствующего процесса на указанное количество секунд. Таким образом, процесс Tasking_Example приостанавливается на 20 секунд, а в это время процесс Outputter начинает печатать значения увеличивающегося на единицу счетчика, приостанавливаясь на одну секунду после вывода каждого значения. По истечении 20 секунд процесс Tasking_Example устанавливает флаг Finished в положение «истина», в результате завершается цикл в процессе Outputter. Спецификация переменной Finished как атомарного объекта данных (строка 4) делает невозможным одновременное чтение и изменение значения этой переменной.

Далее представлен шаблон функции, позволяющей покомпонентно складывать два одномерных массива. Этот шаблон может быть настроен на произвольный тип, являющийся одномерным массивом, для компонентов которого определены операции присваивания и сложения («сложение» не обязано быть арифметическим сложением).

Строки 1-6 содержат объявление настраиваемой функции, а строки 8-20 - ее тело. Содержательно, параметром настройки является произвольный одномерный регулярный тип с неуточненным индексным диапазоном (строка 4), про которого известно только, что тип компонента у него произвольный, однако для компонентов определена операция присваивания (строка 2), тип индекса - произвольный дискретный (строка 4). Поскольку нам предстоит покомпонентно складывать два массива, надо знать, что такое операция сложения для типа компонентов. Так как это произвольный тип, мы вынуждены передавать сложение для типа компонента как формальный параметр настройки (строка 5).

В теле функции мы первым делом проверяем, совпадают ли длины операндов (строка 12), иначе покомпонентное сложение не имеет смысла. Совпадение длин операндов не гарантирует совпадение индексных диапазонов, поэтому в цикле по индексному диапазону первого аргумента (строка 15) нам необходимо каждый раз вычислять индекс соответствующего компонента второго аргумента. Мы лишены возможности сделать это для типа Index, так как знаем про него только, что он дискретен, поэтому переходим от значения дискретного типа к его порядковому номеру (атрибут?Pos), вычисляем необходимый сдвиг для порядкового номера и возвращаемся к соответствующему значению типа Index (атрибут?Val).

Заметим, что параметры (настраиваемой) функции «+» Left и Right объявлены как имеющие тип Arr, индексный диапазон которого не уточнен. Однако Left и Right - это формальные параметры, на место которых при вызове (результата конкретизации) функции «+» будут подставлены конкретные массивы с известными индексными диапазонами. Мы же в теле функции «+» пользуемся атрибутами массивов (?Range, ?First, ?Length), чтобы из объекта получить информацию о его индексном диапазоне.

Почему Ада?

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

  • Желание повысить надежность разрабатываемой системы, так как программные дефекты могут иметь серьезные последствия для здоровья людей, экономики, экологии и т.п. (Ада обладает встроенными средствами обеспечения надежности).
  • Желание снизить стоимость разработки и сопровождения системы.
  • Наличие международных стандартов и наличие компиляторов языка практически для любой платформы.
  • Преимущества дисциплинированного подхода к разработке программного обеспечения, которые становятся особенно существенными по мере увеличения объема и сложности программного обеспечения.
Ада и Си

При проведении сравнительных анализов популярных языков переломано столько копий, что сегодня эту тему часто относят к разряду «религиозных войн». Поэтому ограничимся лишь ссылкой на известную статью , в которой делается ряд красноречивых выводов.

  1. Разработка программ на языке Ада обходится на 60% дешевле аналогичных программных проектов, реализуемых на Си.
  2. Программа на языке Ада имеет в 9 раз меньше дефектов, чем программа на Си; программа на Си++ имеет еще более низкие, чем программа Си, характеристики.
  3. предпочтительнее Си как для опытных, так и для неопытных программистов, а также для программистов, имеющих как максимальный, так и минимальный рейтинг в своей группе.
  4. Трудоемкость изучения языка Ада не выше трудоемкости изучения Си.
  5. Программы на Аде более надежны, чем программы на Си.

В качестве иллюстрации этих выводов, приведем пример разработки бортового программного обеспечения самолета C-130J в соответствии с требованиями Уровня А стандарта DO-178B . При этом констатировалось качество кода, в 10 раз превышающее среднее для программного обеспечения Уровня А. Производительность труда выросла вчетверо относительно сопоставимых программных проектов.

Ада и Java

В Microsoft были вынуждены включить в лицензионные соглашения для своих операционных систем следующий пункт (www.microsoft.com/msdownload/ieplatform/ie/ license.txt ): «Замечание относительно поддержки языка Java... Технология Java не является устойчивой к сбоям и не предназначена... для использования в рамках управляющих систем реального времени..., в которых сбой языка Java может повлечь за собой смерть, увечье, или тяжелый урон инфраструктуре или окружающей среде. Компания Sun Microsystems, Inc. обязала компанию Microsoft разместить данное предупреждение».

Укажем также на статьи и , демонстрирующие преимущества языка Ада над Java.

«Адские» мифы

Довольно часто с Адой связывают набор устойчивых заблуждений, препятствующих как распространению языка, так и осознанному выбору Ады в качестве языка реализации проекта.

Ада - мертвый язык, на нем сейчас никто не программирует. В действительности, Ада уверенно занимает нишу больших встроенных систем с повышенными требованиями к надежности. По сравнению с «коробочными» продуктами для Windows, такие системы не так заметны, поскольку либо существуют в одном экземпляре (какой смысл тиражировать программу, управляющую движением поездов метро), или распространяются как часть системы, в которую они встроены (бортовое программное обеспечение).

Ада - язык, предназначенный исключительно для военных применений. Ада действительно была разработана при участии Министерства обороны США, однако отсутствуют какие-либо технические, административные или иные причины, препятствующие использованию Ады для разработки гражданских систем. Количество «гражданских» проектов, основанных на этом языке, сегодня сопоставимо с количеством «военных» проектов.

Ада - слишком большой и сложный язык, для того чтобы использовать его в небольшом проекте. Объем и сложность всех современных индустриальных языков практически одинаковы, и чтобы убедиться в этом, достаточно просто сравнить объем их описаний. Этот миф восходит к началу 80-х годов, когда Аду сопоставляли с Паскалем, Фортраном 77 или Бейсиком.

Программистов, знающих Аду, мало, изучение языка с нуля требует чрезмерных усилий и времени. На самом же деле, настоящую трудность представляет отыскание специалистов, понимающих специфику встроенных систем и способных создавать качественные программы для них. Так, например, компания BAE, один из активных пользователей языка Ада, не требует от кандидатов знания этого языка; вместо этого ищутся люди, знакомые со встроенными системами и процессами создания программного обеспечения индустриального качества. После найма таких людей требуется всего две недели для обучения их языку Ада.

Наш личный опыт показывает, что программистам, знакомым с той или иной разновидностью Паскаля, требуется всего несколько дней, чтобы начать разрабатывать несложные программы на Аде.

Существующие Ада-технологии неэффективны; и трансляторы, и порождаемый ими код, отличаются низкой производительностью. Этот миф также восходит к первой половине 80-х годов, когда появились первые реализации Ады, фактически всего лишь доказывавшие «теорему существования Ада-транслятора, соответствующего стандарту». Достаточно провести ряд несложных экспериментов, запрограммировав некоторую модельную задачку на Аде, Паскале и Си/Си++, и сравнив (при сопоставимых параметрах компиляторов) затем скорость компиляции, объем порождаемого кода и скорость его выполнения, чтобы убедиться, что какой-либо специфической неэффективности, свойственной Аде, просто не существует. Можно также отметить, что система программирования GNAT при объеме исходных текстов более 40 Мбайт, на 90% реализована на Аде, и построение ее из исходных текстов (в его ходе она трижды сама себя компилирует) на современном ПК занимает не более получаса.

Существующие реализации Ады крайне дороги. Это верно, однако следует иметь в виду, что существует публично доступная версия системы программирования GNAT, которая бесплатно и на совершенно законных основаниях может быть взята из программного репозитория Нью-йоркского университета (ftp://cs.nyu.edu/pub/gnat ) вместе с исходными текстами

Бесплатный сыр и как избежать мышеловки

GNAT (GNu Ada Translator) - многоплатформная реализация языка Ада, существующая практически на всех современных индустриальных платформах и поддерживающая генерацию кода для популярных встроенных архитектур. GNAT (www.gnat.com ) полностью реализует стандарт Ады, включая те библиотеки, которые стандартом классифицируются как необязательные. Помимо собственно Ада-транслятора, GNAT включает инструментарий, в котором следует отметить развитую интегрированную среду разработчика и многоязыковый графический отладчик, позволяющий, в том числе, исследовать поведение программ с асинхронными процессами. Транслятор и сопутствующие инструменты можно использовать как по отдельности, вызывая их из командной строки, так и в рамках интегрированной графической среды разработки Ада-программ. Все компоненты GNAT, включая среду разработки, имеют один и тот же интерфейс на всех платформах. Помимо полной реализации описываемых стандартом средств GNAT предлагает богатый набор допускаемых стандартом расширений. GNAT - реализация Ады в многоязыковой системе программирования gcc, состоящей из набора компиляторов переднего плана для различных входных языков при общем генераторе кода, что существенно упрощает разработку программ, содержащих компоненты, реализованные на различных языках программирования.

GNAT с самого начала разрабатывался и распространялся под лицензией GPL. Увы, с GPL также связана масса мифов. Так, многие считают, что программы под GPL разрабатываются неорганизованными группами энтузиастов, распространяются абсолютно бесплатно; в результате и надежность, и функциональность таких программ оставляют желать лучшего, не позволяют использовать их в сколько-нибудь серьезных проектах. В случае с GNAT это далеко не так. Для того чтобы убедиться в этом, достаточно просмотреть список компаний, заключивших с его разработчиками контракты на техническую поддержку: Boeing, British Aerospace, Lockheed, Ericsson, SAAB, Avionics и др.

Свободное предоставление демонстрационных версий - обычная практика многих разработчиков программного обеспечения. GNAT отличается тем, что находящаяся в свободном доступе публичная версия является абсолютно полной версией технологии, без каких-либо юридических или технических ограничений на ее использование. Ряд серьезных проектов был успешно реализован именно на базе публичных версий GNAT. Программное обеспечение спускаемого аппарата Beagle 2 европейской автоматической станции Mars Express, направляющейся в данный момент к Марсу (www.beagle2.com/index.htm ), автоматизированная станция документальной связи Министерства обороны РФ (www.ada-ru.org/prj_doc.html ). Единственным недостатком публичных версий является то, что разработчик не предоставляет для них технической поддержки.

Заключение

Подводя итог, можно сказать, что язык Ада предоставляет разработчикам идеальное сочетание цельности, последовательности, надежности и эффективности. Язык поддерживает созидательное творчество и новаторство, обеспечивая в то же время дисциплину и индустриальный уровень разработки программного обеспечения, необходимые для реализации программных систем большой важности.

Литература
  1. Benjamin Brosgol, Introduction to Ada 95. www.embedded.com/story/OEG20021211S0034
  2. Stephen Zeigler, Comparing Development Costs of C and Ada. www.adaic.com/whyada/ada-vs-c/cada_art.html www.ada-ru.org . Аннотированную библиографию книг по языку Ада, изданных на русском языке, можно найти на сайте

(то есть систем управления автоматизированными комплексами, функционирующими в реальном времени). Имелись в виду прежде всего бортовые системы управления военными объектами (кораблями, самолётами, танками, ракетами, снарядами и т.п.). Перед разработчиками не стояло задачи создать универсальный язык, поэтому решения, принятые авторами Ады, нужно воспринимать в контексте особенностей выбранной предметной области. Язык назван в честь Ады Лавлейс .

Особенности языка

В исходном варианте, стандартизованном в 1983 году, Ада - это структурный , модульный язык программирования, содержащий высокоуровневые средства программирования параллельных процессов. Синтаксис Ады унаследован от языков типа Algol или Паскаль , но расширен, а также сделан более строгим и логичным. Ада - язык со строгой типизацией , в нём исключена работа с объектами, не имеющими типов , а автоматические преобразования типов сведены к абсолютному минимуму. В стандарте 1995 года в язык были добавлены базовые средства объектно-ориентированного программирования , в стандарте 2007 эти средства были дополнены, поэтому современная Ада - объектно-ориентированный язык программирования.

Из особенностей синтаксиса можно отметить:

  • Язык регистро-независимый.
  • Программы модульные, механизм контроля импорта-экспорта описаний между модулями включает две разные директивы: одну для подключения другого модуля (with), другую - для импорта его описаний (use). Также существует возможность переименовать модуль при импорте (rename) - этот вариант позволяет использовать для обозначения пакета более удобные программисту идентификаторы.
  • Пакеты (один из типов модулей) могут содержать заголовок и личную часть - то, что содержится в ней, не экспортируется и другим модулям недоступно.
  • Поддерживается механизм обобщённых (настраиваемых) модулей : пакетов, процедур и функций, позволяющих описывать обобщённые алгоритмы обработки данных без указания конкретного типа.
  • Развитая система типов, как встроенных, так и порождаемых программистом. Есть множество способов создания новых типов, язык поддерживает два разных понятия: «подтип» и «производный тип». Переменные типа и подтипа совместимы, переменные типа и его производного типа - нет.
  • Средства обработки исключений .
  • Развитые средства обращения к процедурам и функциям: поддерживаются входные и выходные параметры, передача фактических параметров в произвольном порядке с указанием имён формальных, параметры со значениями по умолчанию.
  • Поддерживается переопределение процедур, функций и операторов - создание нескольких вариантов процедуры, функции или оператора с одним и тем же именем, но различными сигнатурами (типами и количеством параметров).
  • Встроенные в язык конструкции поддержки параллельного программирования: поддерживаются понятия «задача» (параллельно выполняемый фрагмент программы), «вход задачи» (средство синхронизации и коммуникации параллельно выполняющихся задач), поддерживается механизм «рандеву» (протокол взаимодействия параллельно выполняемых задач через вход одной из них), имеется оператор выбора SELECT для организации условного межпотокового взаимодействия (выбора параллельной задачи, с которой следует взаимодействовать, в зависимости от готовности к рандеву и некоторых других условий). В принципе, имеющихся в языке средств параллельного программирования достаточно для решения большого класса задач, требующих параллельной обработки, без обращения к внешним средствам, таким как дополнительные библиотеки или API операционной системы.

Для удовлетворения требованиям надёжности язык построен таким образом, чтобы как можно большее количество ошибок обнаруживалось на этапе компиляции . Кроме того, одним из требований при разработке языка была максимально лёгкая читаемость текстов программ , даже в ущерб лёгкости написания . Результатом такого подхода стал несколько «тяжеловесный» синтаксис и множество ограничений, отсутствующих в наиболее распространённых промышленных языках ( и C++) и часто воспринимаемых профессиональными программистами как избыточные, например, та же строгая типизация . Это привело к формированию представления об Аде как о сложном, малопонятном и неудобном в использовании языке .

«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 году , с формирования набора требований к языку, который бы в полной мере удовлетворил разработчиков систем указанного типа. Первоначальный список требований, выпущенный под кодовым наименованием «Соломенный», был представлен на рецензию в ряд организаций и фирм, в течение двух лет последовательно уточнялся, в конечном счёте превратившись в итоговый документ под названием «Стальной».

После завершения формирования требований был проведён анализ, который показал, что ни один из имеющихся языков программирования не удовлетворяет требованиям в достаточной мере, так что было принято решение разработать новый язык. Конкурс на его создание был объявлен в 1977 году , разработчикам было предложено базироваться на одном из трёх языков: Паскаль , Алгол-68 или PL/1 .

Из представленных на конкурс 15 проектов было отобрано 4 (все основаны на Паскале). Эти проекты были отправлены на дальнейшую доработку. На следующем этапе из 4 проектов отобрали два, из которых, после очередной доработки, был выбран один. Этот язык получил наименование «Ада» - разработавшая его группа под руководством француза Жана Ишбиа дала языку название в честь Огасты Ады Кинг Лавлейс (1815-1852), дочери поэта Дж. Байрона , которая занималась разработкой программ для вычислительной машины Бэббиджа и считается первым программистом в мире.

Критика

Дейкстра усомнился, что язык такой сложности, как Ада, может быть обозрим и управляем.

Если Ada собирается выдать стандарт, желательно, чтобы он был недвусмысленно документирован. По меньшей мере две группы попытались сделать это; в результате обе выдали около 600 страниц формального текста. Это гораздо больше, чем необходимо, чтобы удостовериться в невозможности хотя бы твердо установить, что оба документа определяют один и тот же язык. Ошибка очевидной неуправляемости этих двух документов кроется не в двух группах, составивших их, не в принятом ими формализме, а лишь в самом языке: сами не обеспечив формального определения, могут ли его разработчики скрыть, что они предлагают неуправляемого монстра. То, что Ada уменьшит проблемы программирования и увеличит надёжность наших разработок до приемлемых границ, - это лишь одна из тех сказок, в которые могут поверить только люди с военным образованием.

Хоар выразил своё сожаление тем, что «погремушки и побрякушки возобладали над фундаментальными требованиями надёжности и безопасности» и предостерёг от «армады ракет, летящих не туда из-за не обнаруженной вовремя ошибки в компиляторе Ады». Никлаус Вирт высказался более сдержанно, но тоже негативно. Он сказал: «Слишком много всего вываливается на программиста. Я не думаю, что, изучив треть Ады, можно нормально работать. Если вы не освоите всех деталей языка, то в дальнейшем можете споткнуться на них, и это приведёт к неприятным последствиям» . Жан Ишбиа , руководитель группы разработчиков Ады, выразив своё «уважение и восхищение» Виртом, не согласился с ним, сказав: «Вирт верит в простые решения сложных проблем. Я не верю в такие чудеса. Сложные проблемы требуют сложных решений».

Вызывает сомнения и процедура проверки соответствия компилятора стандарту языка путём тестирования. Из общих соображений ясно, что тестирование может найти несоответствие, но не может гарантировать правильность. Практическим подтверждением этого является тот факт, что сертифицированные компиляторы, будучи проверены на другом наборе тестов, обнаруживали несоответствие стандарту .

Сторонники Ады утверждают, что единственная альтернатива большому и сложному языку в больших проектах - это применение нескольких компактных языков, неизбежно порождающее проблемы с совместимостью, для избавления от которых и была придумана Ада. Они замечают также, что представление о сложности разработки на Аде верно лишь отчасти: написание простой программы на Аде действительно требует больше времени, чем на других, менее формальных языках, типа Си , но отладка и сопровождение программ, особенно крупных и сложных, значительно упрощается. По утверждению Стефена Цейгера из Rational Software Corporation , разработка программного обеспечения на Аде в целом обходится на 60 % дешевле, а разработанная программа имеет в 9 раз меньше дефектов, чем при использовании языка Си.

Распространение, перспективы

На практике оказалось, что Ада, заняв предназначенную ей нишу в военных и родственных им разработках встроенных систем, за пределы данной ниши так и не вышла ни на Западе, ни в СССР, ни на постсоветском пространстве. Причин этому называется много. Противники языка упирают на его сложность и недостатки, сторонники говорят, прежде всего, об объективных обстоятельствах появления языка и негативных сторонах процесса его внедрения. Интересно мнение С. И. Рыбина, старшего научного сотрудника НИВЦ МГУ, консультанта компании AdaCore EU, эксперта по языку Ада рабочей группы ISO по стандарту языка. Он считает , что своими неудачами Ада обязана двум основным причинам:

  • Во время проектирования языка Пентагон предполагал, что всё новое ПО будет создаваться только на Аде. Из-за этого Ада получила крайне примитивные средства взаимодействия с программами на других языках. На практике оказалось, что написать на Аде вообще всё - нереально (хотя бы потому, что возникала необходимость взаимодействовать с готовыми разработками на других языках). Поэтому в отраслях, где не было жёсткого требования «писать только на Аде», предпочитали другие языки, более приспособленные к многоязычной среде. В стандарте 1995 года проблема взаимодействия с другими языками была решена, но время оказалось упущено.
  • Парадоксально, но распространению Ады помешала финансовая и организационная поддержка Пентагона. Программы на Аде, написанные для военных, работали на самой мощной вычислительной технике, какая была доступна, поэтому разработчики компиляторов заботились в первую очередь о прохождении тестов ACVC, и только потом - об эффективности компилятора и создаваемого им кода. В начале 1980-х годов начался бум микрокомпьютеров, и трансляторы для распространённых языков (Паскаля, Си, Бейсика) были оперативно оптимизированы под маломощные системы. Для Ады стимула в такой модернизации не оказалось, в результате ставшие через несколько лет основной массой мирового вычислительного парка персональные компьютеры оказались без качественного транслятора Ады. Естественно, что Ада потеряла этот сегмент рынка. Лишь относительно недавно появился компилятор GNAT , качественный и производительный, но и здесь время оказалось упущено.

Тем не менее, по некоторым осторожным прогнозам, с удешевлением аппаратуры и распространением встроенных систем со сложным ПО рынок для программ на Аде может заметно вырасти:

… Ада достаточно прочно занимает нишу больших встроенных систем с повышенными требованиями к надежности, и едва ли она уступит кому-либо эту нишу в обозримом будущем. Рост производительности аппаратных компонент при одновременном падении их стоимости ведет к тому, что встроенные системы становятся все сложнее и сложнее, и может так оказаться, что потенциальный рынок для Ада-приложений вскоре существенно вырастет.

Кроме того, Ада имеет, пусть и весьма ограниченное, применение в сфере высшего образования. В МГУ и Харьковском университете читаются спецкурсы по Аде. Однако, по словам того же С. И. Рыбина ,

… сейчас на постсоветском пространстве в области программной индустрии и образования сложился очевидный порочный круг: в индустрии практически не знают про Аду, соответственно, со стороны индустрии нет запроса к образованию по подготовке Ада-специалистов, и из вузов в индустрию приходят новые люди, которые практически ничего не знают про Аду.

Операционные системы, написанные на Аде

Встроенные системы

  • RTEMS - ОС с открытым исходным кодом, разработана DARPA МО США , используется в ракетных системах и на борту автоматической межпланетной станции Mars Reconnaissance Orbiter , как управляющая радиомодулем «Electra».
  • Ravenskar (англ.) русск.
  • RTOS-32 - проприетарная ОС

Системы в разработке

  • AuroraUX (проект по переписыванию ядра OpenSolaris , а потом DragonFly BSD на язык Ада)
  • (операционная система на ядре )

Больше не существующие системы

  • BiiN™
  • Pulse™
  • AdaOS

Компиляторы Ада

Название Компания Версия Целевые платформы Сайт
Ada-C/C++ Changer (ранее AdaMagic) MapuSoft Ада 83, Ада 95, подмножество Ада 2005 Си
Ada/Ed Нью-Йоркский университет Ада 83 MS-DOS x86 , UnixWare
AdaMagic SofCheck Ада 95 ?
AdaMULTI Green Hills Software Ада 83, Ада 95, Си , Си++ , Фортран Solaris SPARC , GNU /Linux x86 , Windows
DEC Ada Hewlett Packard Ада 83 OpenVMS
GNAT AdaCore Ада 83, Ада 95, Ада 2005, Ада 2012, Си Solaris SPARC, Linux x86/x86-64 , Windows, Java Virtual Machine , другие
ICC Irvine Compiler Corporation Ада 83, Ада 95 DEC VAX /VMS , HP 9000/700 , Solaris SPARC, DEC Alpha OSF/1 , PC Linux, SGI IRIX , Windows
Janus/Ada RR Software Ада 83, Ада 95 SCO , UnixWare , Interactive , MS-DOS , Windows
MAXAda Concurrent Ада 95 Linux/Xeon , PowerPC
ObjectAda Aonix Ада 95, Ravenskar (англ.) русск. Solaris SPARC, VxWorks , HP-UX , IBM AIX , Linux, Windows, Java Virtual Machine / Java с поддержкой браузеров
PowerAda OC Systems Ада 83, Ада 95 Linux, AIX (Ада 95); IBM System 370/390 (Ада 83)
Rational Apex IBM Rational Ада 83, Си, Си++ Solaris SPARC, Linux
SCORE DDC-I Ада 83, Ада 95, Си, Фортран Solaris SPARC, Windows
XD Ada SWEP-EDS Ада 83 OpenVMS Alpha/VAX
XGC Ada XGC Software Ада 83, Ада 95, Си Solaris SPARC, PC Linux, Windows (Cygwin)
LLVM (Low Level Virtual Machine) LLVM Developer Group на большинство UNIX-подобных систем и Windows llvm.org
A# (порт Ada на платформу Microsoft .NET) Академия ВВС США (GNU) Windows

За исключением LLVM , GNAT и XGC (для некоторых платформ) вышеперечисленные компиляторы являются платными. Некоторые фирмы, например Aonix , предлагают бесплатные демонстрационные версии, ограниченные либо по времени использования, либо по функциональности.

Среды разработки NetBeans и Eclipse имеют плагины для работы с Ада.

Производные языки

Синтаксис языка Ада использован в следующих языках:

Язык Пентагона - враг мира. Язык «Ады» - голос термоядерного ада… В языке «Ады» слышится проклятие роду людскому.

Напишите отзыв о статье "Ада (язык программирования)"

Примечания

Ссылки

  • , progopedia.ru
  • , ada-ru.org
  • , ada-ru.org

Литература

  • Бар Р. Дж. . - М .: «Мир» , 1988. - С. 318.
  • Гавва А. . - 2004. - С. 431.
  • John Barnes. . - 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 Resource Association.
Стандарты
  • 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 (текущая редакция стандарта)

Отрывок, характеризующий Ада (язык программирования)

Каратаев, по случаю тепла и для удобства работы, был в одних портках и в черной, как земля, продранной рубашке. Волоса его, как это делают мастеровые, были обвязаны мочалочкой, и круглое лицо его казалось еще круглее и миловиднее.
– Уговорец – делу родной братец. Как сказал к пятнице, так и сделал, – говорил Платон, улыбаясь и развертывая сшитую им рубашку.
Француз беспокойно оглянулся и, как будто преодолев сомнение, быстро скинул мундир и надел рубаху. Под мундиром на французе не было рубахи, а на голое, желтое, худое тело был надет длинный, засаленный, шелковый с цветочками жилет. Француз, видимо, боялся, чтобы пленные, смотревшие на него, не засмеялись, и поспешно сунул голову в рубашку. Никто из пленных не сказал ни слова.
– Вишь, в самый раз, – приговаривал Платон, обдергивая рубаху. Француз, просунув голову и руки, не поднимая глаз, оглядывал на себе рубашку и рассматривал шов.
– Что ж, соколик, ведь это не швальня, и струмента настоящего нет; а сказано: без снасти и вша не убьешь, – говорил Платон, кругло улыбаясь и, видимо, сам радуясь на свою работу.
– C"est bien, c"est bien, merci, mais vous devez avoir de la toile de reste? [Хорошо, хорошо, спасибо, а полотно где, что осталось?] – сказал француз.
– Она еще ладнее будет, как ты на тело то наденешь, – говорил Каратаев, продолжая радоваться на свое произведение. – Вот и хорошо и приятно будет.
– Merci, merci, mon vieux, le reste?.. – повторил француз, улыбаясь, и, достав ассигнацию, дал Каратаеву, – mais le reste… [Спасибо, спасибо, любезный, а остаток то где?.. Остаток то давай.]
Пьер видел, что Платон не хотел понимать того, что говорил француз, и, не вмешиваясь, смотрел на них. Каратаев поблагодарил за деньги и продолжал любоваться своею работой. Француз настаивал на остатках и попросил Пьера перевести то, что он говорил.
– На что же ему остатки то? – сказал Каратаев. – Нам подверточки то важные бы вышли. Ну, да бог с ним. – И Каратаев с вдруг изменившимся, грустным лицом достал из за пазухи сверточек обрезков и, не глядя на него, подал французу. – Эхма! – проговорил Каратаев и пошел назад. Француз поглядел на полотно, задумался, взглянул вопросительно на Пьера, и как будто взгляд Пьера что то сказал ему.
– Platoche, dites donc, Platoche, – вдруг покраснев, крикнул француз пискливым голосом. – Gardez pour vous, [Платош, а Платош. Возьми себе.] – сказал он, подавая обрезки, повернулся и ушел.
– Вот поди ты, – сказал Каратаев, покачивая головой. – Говорят, нехристи, а тоже душа есть. То то старички говаривали: потная рука торовата, сухая неподатлива. Сам голый, а вот отдал же. – Каратаев, задумчиво улыбаясь и глядя на обрезки, помолчал несколько времени. – А подверточки, дружок, важнеющие выдут, – сказал он и вернулся в балаган.

Прошло четыре недели с тех пор, как Пьер был в плену. Несмотря на то, что французы предлагали перевести его из солдатского балагана в офицерский, он остался в том балагане, в который поступил с первого дня.
В разоренной и сожженной Москве Пьер испытал почти крайние пределы лишений, которые может переносить человек; но, благодаря своему сильному сложению и здоровью, которого он не сознавал до сих пор, и в особенности благодаря тому, что эти лишения подходили так незаметно, что нельзя было сказать, когда они начались, он переносил не только легко, но и радостно свое положение. И именно в это то самое время он получил то спокойствие и довольство собой, к которым он тщетно стремился прежде. Он долго в своей жизни искал с разных сторон этого успокоения, согласия с самим собою, того, что так поразило его в солдатах в Бородинском сражении, – он искал этого в филантропии, в масонстве, в рассеянии светской жизни, в вине, в геройском подвиге самопожертвования, в романтической любви к Наташе; он искал этого путем мысли, и все эти искания и попытки все обманули его. И он, сам не думая о том, получил это успокоение и это согласие с самим собою только через ужас смерти, через лишения и через то, что он понял в Каратаеве. Те страшные минуты, которые он пережил во время казни, как будто смыли навсегда из его воображения и воспоминания тревожные мысли и чувства, прежде казавшиеся ему важными. Ему не приходило и мысли ни о России, ни о войне, ни о политике, ни о Наполеоне. Ему очевидно было, что все это не касалось его, что он не призван был и потому не мог судить обо всем этом. «России да лету – союзу нету», – повторял он слова Каратаева, и эти слова странно успокоивали его. Ему казалось теперь непонятным и даже смешным его намерение убить Наполеона и его вычисления о кабалистическом числе и звере Апокалипсиса. Озлобление его против жены и тревога о том, чтобы не было посрамлено его имя, теперь казались ему не только ничтожны, но забавны. Что ему было за дело до того, что эта женщина вела там где то ту жизнь, которая ей нравилась? Кому, в особенности ему, какое дело было до того, что узнают или не узнают, что имя их пленного было граф Безухов?
Теперь он часто вспоминал свой разговор с князем Андреем и вполне соглашался с ним, только несколько иначе понимая мысль князя Андрея. Князь Андрей думал и говорил, что счастье бывает только отрицательное, но он говорил это с оттенком горечи и иронии. Как будто, говоря это, он высказывал другую мысль – о том, что все вложенные в нас стремленья к счастью положительному вложены только для того, чтобы, не удовлетворяя, мучить нас. Но Пьер без всякой задней мысли признавал справедливость этого. Отсутствие страданий, удовлетворение потребностей и вследствие того свобода выбора занятий, то есть образа жизни, представлялись теперь Пьеру несомненным и высшим счастьем человека. Здесь, теперь только, в первый раз Пьер вполне оценил наслажденье еды, когда хотелось есть, питья, когда хотелось пить, сна, когда хотелось спать, тепла, когда было холодно, разговора с человеком, когда хотелось говорить и послушать человеческий голос. Удовлетворение потребностей – хорошая пища, чистота, свобода – теперь, когда он был лишен всего этого, казались Пьеру совершенным счастием, а выбор занятия, то есть жизнь, теперь, когда выбор этот был так ограничен, казались ему таким легким делом, что он забывал то, что избыток удобств жизни уничтожает все счастие удовлетворения потребностей, а большая свобода выбора занятий, та свобода, которую ему в его жизни давали образование, богатство, положение в свете, что эта то свобода и делает выбор занятий неразрешимо трудным и уничтожает самую потребность и возможность занятия.
Все мечтания Пьера теперь стремились к тому времени, когда он будет свободен. А между тем впоследствии и во всю свою жизнь Пьер с восторгом думал и говорил об этом месяце плена, о тех невозвратимых, сильных и радостных ощущениях и, главное, о том полном душевном спокойствии, о совершенной внутренней свободе, которые он испытывал только в это время.
Когда он в первый день, встав рано утром, вышел на заре из балагана и увидал сначала темные купола, кресты Ново Девичьего монастыря, увидал морозную росу на пыльной траве, увидал холмы Воробьевых гор и извивающийся над рекою и скрывающийся в лиловой дали лесистый берег, когда ощутил прикосновение свежего воздуха и услыхал звуки летевших из Москвы через поле галок и когда потом вдруг брызнуло светом с востока и торжественно выплыл край солнца из за тучи, и купола, и кресты, и роса, и даль, и река, все заиграло в радостном свете, – Пьер почувствовал новое, не испытанное им чувство радости и крепости жизни.
И чувство это не только не покидало его во все время плена, но, напротив, возрастало в нем по мере того, как увеличивались трудности его положения.
Чувство это готовности на все, нравственной подобранности еще более поддерживалось в Пьере тем высоким мнением, которое, вскоре по его вступлении в балаган, установилось о нем между его товарищами. Пьер с своим знанием языков, с тем уважением, которое ему оказывали французы, с своей простотой, отдававший все, что у него просили (он получал офицерские три рубля в неделю), с своей силой, которую он показал солдатам, вдавливая гвозди в стену балагана, с кротостью, которую он выказывал в обращении с товарищами, с своей непонятной для них способностью сидеть неподвижно и, ничего не делая, думать, представлялся солдатам несколько таинственным и высшим существом. Те самые свойства его, которые в том свете, в котором он жил прежде, были для него если не вредны, то стеснительны – его сила, пренебрежение к удобствам жизни, рассеянность, простота, – здесь, между этими людьми, давали ему положение почти героя. И Пьер чувствовал, что этот взгляд обязывал его.

В ночь с 6 го на 7 е октября началось движение выступавших французов: ломались кухни, балаганы, укладывались повозки и двигались войска и обозы.
В семь часов утра конвой французов, в походной форме, в киверах, с ружьями, ранцами и огромными мешками, стоял перед балаганами, и французский оживленный говор, пересыпаемый ругательствами, перекатывался по всей линии.
В балагане все были готовы, одеты, подпоясаны, обуты и ждали только приказания выходить. Больной солдат Соколов, бледный, худой, с синими кругами вокруг глаз, один, не обутый и не одетый, сидел на своем месте и выкатившимися от худобы глазами вопросительно смотрел на не обращавших на него внимания товарищей и негромко и равномерно стонал. Видимо, не столько страдания – он был болен кровавым поносом, – сколько страх и горе оставаться одному заставляли его стонать.
Пьер, обутый в башмаки, сшитые для него Каратаевым из цибика, который принес француз для подшивки себе подошв, подпоясанный веревкою, подошел к больному и присел перед ним на корточки.
– Что ж, Соколов, они ведь не совсем уходят! У них тут гошпиталь. Может, тебе еще лучше нашего будет, – сказал Пьер.
– О господи! О смерть моя! О господи! – громче застонал солдат.
– Да я сейчас еще спрошу их, – сказал Пьер и, поднявшись, пошел к двери балагана. В то время как Пьер подходил к двери, снаружи подходил с двумя солдатами тот капрал, который вчера угощал Пьера трубкой. И капрал и солдаты были в походной форме, в ранцах и киверах с застегнутыми чешуями, изменявшими их знакомые лица.
Капрал шел к двери с тем, чтобы, по приказанию начальства, затворить ее. Перед выпуском надо было пересчитать пленных.
– Caporal, que fera t on du malade?.. [Капрал, что с больным делать?..] – начал Пьер; но в ту минуту, как он говорил это, он усумнился, тот ли это знакомый его капрал или другой, неизвестный человек: так непохож был на себя капрал в эту минуту. Кроме того, в ту минуту, как Пьер говорил это, с двух сторон вдруг послышался треск барабанов. Капрал нахмурился на слова Пьера и, проговорив бессмысленное ругательство, захлопнул дверь. В балагане стало полутемно; с двух сторон резко трещали барабаны, заглушая стоны больного.
«Вот оно!.. Опять оно!» – сказал себе Пьер, и невольный холод пробежал по его спине. В измененном лице капрала, в звуке его голоса, в возбуждающем и заглушающем треске барабанов Пьер узнал ту таинственную, безучастную силу, которая заставляла людей против своей воли умерщвлять себе подобных, ту силу, действие которой он видел во время казни. Бояться, стараться избегать этой силы, обращаться с просьбами или увещаниями к людям, которые служили орудиями ее, было бесполезно. Это знал теперь Пьер. Надо было ждать и терпеть. Пьер не подошел больше к больному и не оглянулся на него. Он, молча, нахмурившись, стоял у двери балагана.
Когда двери балагана отворились и пленные, как стадо баранов, давя друг друга, затеснились в выходе, Пьер пробился вперед их и подошел к тому самому капитану, который, по уверению капрала, готов был все сделать для Пьера. Капитан тоже был в походной форме, и из холодного лица его смотрело тоже «оно», которое Пьер узнал в словах капрала и в треске барабанов.
– Filez, filez, [Проходите, проходите.] – приговаривал капитан, строго хмурясь и глядя на толпившихся мимо него пленных. Пьер знал, что его попытка будет напрасна, но подошел к нему.
– Eh bien, qu"est ce qu"il y a? [Ну, что еще?] – холодно оглянувшись, как бы не узнав, сказал офицер. Пьер сказал про больного.
– Il pourra marcher, que diable! – сказал капитан. – Filez, filez, [Он пойдет, черт возьми! Проходите, проходите] – продолжал он приговаривать, не глядя на Пьера.
– Mais non, il est a l"agonie… [Да нет же, он умирает…] – начал было Пьер.
– Voulez vous bien?! [Пойди ты к…] – злобно нахмурившись, крикнул капитан.
Драм да да дам, дам, дам, трещали барабаны. И Пьер понял, что таинственная сила уже вполне овладела этими людьми и что теперь говорить еще что нибудь было бесполезно.
Пленных офицеров отделили от солдат и велели им идти впереди. Офицеров, в числе которых был Пьер, было человек тридцать, солдатов человек триста.
Пленные офицеры, выпущенные из других балаганов, были все чужие, были гораздо лучше одеты, чем Пьер, и смотрели на него, в его обуви, с недоверчивостью и отчужденностью. Недалеко от Пьера шел, видимо, пользующийся общим уважением своих товарищей пленных, толстый майор в казанском халате, подпоясанный полотенцем, с пухлым, желтым, сердитым лицом. Он одну руку с кисетом держал за пазухой, другою опирался на чубук. Майор, пыхтя и отдуваясь, ворчал и сердился на всех за то, что ему казалось, что его толкают и что все торопятся, когда торопиться некуда, все чему то удивляются, когда ни в чем ничего нет удивительного. Другой, маленький худой офицер, со всеми заговаривал, делая предположения о том, куда их ведут теперь и как далеко они успеют пройти нынешний день. Чиновник, в валеных сапогах и комиссариатской форме, забегал с разных сторон и высматривал сгоревшую Москву, громко сообщая свои наблюдения о том, что сгорело и какая была та или эта видневшаяся часть Москвы. Третий офицер, польского происхождения по акценту, спорил с комиссариатским чиновником, доказывая ему, что он ошибался в определении кварталов Москвы.
– О чем спорите? – сердито говорил майор. – Николы ли, Власа ли, все одно; видите, все сгорело, ну и конец… Что толкаетесь то, разве дороги мало, – обратился он сердито к шедшему сзади и вовсе не толкавшему его.
– Ай, ай, ай, что наделали! – слышались, однако, то с той, то с другой стороны голоса пленных, оглядывающих пожарища. – И Замоскворечье то, и Зубово, и в Кремле то, смотрите, половины нет… Да я вам говорил, что все Замоскворечье, вон так и есть.
– Ну, знаете, что сгорело, ну о чем же толковать! – говорил майор.
Проходя через Хамовники (один из немногих несгоревших кварталов Москвы) мимо церкви, вся толпа пленных вдруг пожалась к одной стороне, и послышались восклицания ужаса и омерзения.
– Ишь мерзавцы! То то нехристи! Да мертвый, мертвый и есть… Вымазали чем то.
Пьер тоже подвинулся к церкви, у которой было то, что вызывало восклицания, и смутно увидал что то, прислоненное к ограде церкви. Из слов товарищей, видевших лучше его, он узнал, что это что то был труп человека, поставленный стоймя у ограды и вымазанный в лице сажей…
– Marchez, sacre nom… Filez… trente mille diables… [Иди! иди! Черти! Дьяволы!] – послышались ругательства конвойных, и французские солдаты с новым озлоблением разогнали тесаками толпу пленных, смотревшую на мертвого человека.

По переулкам Хамовников пленные шли одни с своим конвоем и повозками и фурами, принадлежавшими конвойным и ехавшими сзади; но, выйдя к провиантским магазинам, они попали в середину огромного, тесно двигавшегося артиллерийского обоза, перемешанного с частными повозками.
У самого моста все остановились, дожидаясь того, чтобы продвинулись ехавшие впереди. С моста пленным открылись сзади и впереди бесконечные ряды других двигавшихся обозов. Направо, там, где загибалась Калужская дорога мимо Нескучного, пропадая вдали, тянулись бесконечные ряды войск и обозов. Это были вышедшие прежде всех войска корпуса Богарне; назади, по набережной и через Каменный мост, тянулись войска и обозы Нея.
Войска Даву, к которым принадлежали пленные, шли через Крымский брод и уже отчасти вступали в Калужскую улицу. Но обозы так растянулись, что последние обозы Богарне еще не вышли из Москвы в Калужскую улицу, а голова войск Нея уже выходила из Большой Ордынки.
Пройдя Крымский брод, пленные двигались по нескольку шагов и останавливались, и опять двигались, и со всех сторон экипажи и люди все больше и больше стеснялись. Пройдя более часа те несколько сот шагов, которые отделяют мост от Калужской улицы, и дойдя до площади, где сходятся Замоскворецкие улицы с Калужскою, пленные, сжатые в кучу, остановились и несколько часов простояли на этом перекрестке. Со всех сторон слышался неумолкаемый, как шум моря, грохот колес, и топот ног, и неумолкаемые сердитые крики и ругательства. Пьер стоял прижатый к стене обгорелого дома, слушая этот звук, сливавшийся в его воображении с звуками барабана.
Несколько пленных офицеров, чтобы лучше видеть, влезли на стену обгорелого дома, подле которого стоял Пьер.
– Народу то! Эка народу!.. И на пушках то навалили! Смотри: меха… – говорили они. – Вишь, стервецы, награбили… Вон у того то сзади, на телеге… Ведь это – с иконы, ей богу!.. Это немцы, должно быть. И наш мужик, ей богу!.. Ах, подлецы!.. Вишь, навьючился то, насилу идет! Вот те на, дрожки – и те захватили!.. Вишь, уселся на сундуках то. Батюшки!.. Подрались!..
– Так его по морде то, по морде! Этак до вечера не дождешься. Гляди, глядите… а это, верно, самого Наполеона. Видишь, лошади то какие! в вензелях с короной. Это дом складной. Уронил мешок, не видит. Опять подрались… Женщина с ребеночком, и недурна. Да, как же, так тебя и пропустят… Смотри, и конца нет. Девки русские, ей богу, девки! В колясках ведь как покойно уселись!
Опять волна общего любопытства, как и около церкви в Хамовниках, надвинула всех пленных к дороге, и Пьер благодаря своему росту через головы других увидал то, что так привлекло любопытство пленных. В трех колясках, замешавшихся между зарядными ящиками, ехали, тесно сидя друг на друге, разряженные, в ярких цветах, нарумяненные, что то кричащие пискливыми голосами женщины.
С той минуты как Пьер сознал появление таинственной силы, ничто не казалось ему странно или страшно: ни труп, вымазанный для забавы сажей, ни эти женщины, спешившие куда то, ни пожарища Москвы. Все, что видел теперь Пьер, не производило на него почти никакого впечатления – как будто душа его, готовясь к трудной борьбе, отказывалась принимать впечатления, которые могли ослабить ее.
Поезд женщин проехал. За ним тянулись опять телеги, солдаты, фуры, солдаты, палубы, кареты, солдаты, ящики, солдаты, изредка женщины.
Пьер не видал людей отдельно, а видел движение их.
Все эти люди, лошади как будто гнались какой то невидимою силою. Все они, в продолжение часа, во время которого их наблюдал Пьер, выплывали из разных улиц с одним и тем же желанием скорее пройти; все они одинаково, сталкиваясь с другими, начинали сердиться, драться; оскаливались белые зубы, хмурились брови, перебрасывались все одни и те же ругательства, и на всех лицах было одно и то же молодечески решительное и жестоко холодное выражение, которое поутру поразило Пьера при звуке барабана на лице капрала.
Уже перед вечером конвойный начальник собрал свою команду и с криком и спорами втеснился в обозы, и пленные, окруженные со всех сторон, вышли на Калужскую дорогу.
Шли очень скоро, не отдыхая, и остановились только, когда уже солнце стало садиться. Обозы надвинулись одни на других, и люди стали готовиться к ночлегу. Все казались сердиты и недовольны. Долго с разных сторон слышались ругательства, злобные крики и драки. Карета, ехавшая сзади конвойных, надвинулась на повозку конвойных и пробила ее дышлом. Несколько солдат с разных сторон сбежались к повозке; одни били по головам лошадей, запряженных в карете, сворачивая их, другие дрались между собой, и Пьер видел, что одного немца тяжело ранили тесаком в голову.
Казалось, все эти люди испытывали теперь, когда остановились посреди поля в холодных сумерках осеннего вечера, одно и то же чувство неприятного пробуждения от охватившей всех при выходе поспешности и стремительного куда то движения. Остановившись, все как будто поняли, что неизвестно еще, куда идут, и что на этом движении много будет тяжелого и трудного.
С пленными на этом привале конвойные обращались еще хуже, чем при выступлении. На этом привале в первый раз мясная пища пленных была выдана кониною.
От офицеров до последнего солдата было заметно в каждом как будто личное озлобление против каждого из пленных, так неожиданно заменившее прежде дружелюбные отношения.
Озлобление это еще более усилилось, когда при пересчитывании пленных оказалось, что во время суеты, выходя из Москвы, один русский солдат, притворявшийся больным от живота, – бежал. Пьер видел, как француз избил русского солдата за то, что тот отошел далеко от дороги, и слышал, как капитан, его приятель, выговаривал унтер офицеру за побег русского солдата и угрожал ему судом. На отговорку унтер офицера о том, что солдат был болен и не мог идти, офицер сказал, что велено пристреливать тех, кто будет отставать. Пьер чувствовал, что та роковая сила, которая смяла его во время казни и которая была незаметна во время плена, теперь опять овладела его существованием. Ему было страшно; но он чувствовал, как по мере усилий, которые делала роковая сила, чтобы раздавить его, в душе его вырастала и крепла независимая от нее сила жизни.
Пьер поужинал похлебкою из ржаной муки с лошадиным мясом и поговорил с товарищами.
Ни Пьер и никто из товарищей его не говорили ни о том, что они видели в Москве, ни о грубости обращения французов, ни о том распоряжении пристреливать, которое было объявлено им: все были, как бы в отпор ухудшающемуся положению, особенно оживлены и веселы. Говорили о личных воспоминаниях, о смешных сценах, виденных во время похода, и заминали разговоры о настоящем положении.
Солнце давно село. Яркие звезды зажглись кое где по небу; красное, подобное пожару, зарево встающего полного месяца разлилось по краю неба, и огромный красный шар удивительно колебался в сероватой мгле. Становилось светло. Вечер уже кончился, но ночь еще не начиналась. Пьер встал от своих новых товарищей и пошел между костров на другую сторону дороги, где, ему сказали, стояли пленные солдаты. Ему хотелось поговорить с ними. На дороге французский часовой остановил его и велел воротиться.
Пьер вернулся, но не к костру, к товарищам, а к отпряженной повозке, у которой никого не было. Он, поджав ноги и опустив голову, сел на холодную землю у колеса повозки и долго неподвижно сидел, думая. Прошло более часа. Никто не тревожил Пьера. Вдруг он захохотал своим толстым, добродушным смехом так громко, что с разных сторон с удивлением оглянулись люди на этот странный, очевидно, одинокий смех.
– Ха, ха, ха! – смеялся Пьер. И он проговорил вслух сам с собою: – Не пустил меня солдат. Поймали меня, заперли меня. В плену держат меня. Кого меня? Меня! Меня – мою бессмертную душу! Ха, ха, ха!.. Ха, ха, ха!.. – смеялся он с выступившими на глаза слезами.
Какой то человек встал и подошел посмотреть, о чем один смеется этот странный большой человек. Пьер перестал смеяться, встал, отошел подальше от любопытного и оглянулся вокруг себя.
Прежде громко шумевший треском костров и говором людей, огромный, нескончаемый бивак затихал; красные огни костров потухали и бледнели. Высоко в светлом небе стоял полный месяц. Леса и поля, невидные прежде вне расположения лагеря, открывались теперь вдали. И еще дальше этих лесов и полей виднелась светлая, колеблющаяся, зовущая в себя бесконечная даль. Пьер взглянул в небо, в глубь уходящих, играющих звезд. «И все это мое, и все это во мне, и все это я! – думал Пьер. – И все это они поймали и посадили в балаган, загороженный досками!» Он улыбнулся и пошел укладываться спать к своим товарищам.

В первых числах октября к Кутузову приезжал еще парламентер с письмом от Наполеона и предложением мира, обманчиво означенным из Москвы, тогда как Наполеон уже был недалеко впереди Кутузова, на старой Калужской дороге. Кутузов отвечал на это письмо так же, как на первое, присланное с Лористоном: он сказал, что о мире речи быть не может.
Вскоре после этого из партизанского отряда Дорохова, ходившего налево от Тарутина, получено донесение о том, что в Фоминском показались войска, что войска эти состоят из дивизии Брусье и что дивизия эта, отделенная от других войск, легко может быть истреблена. Солдаты и офицеры опять требовали деятельности. Штабные генералы, возбужденные воспоминанием о легкости победы под Тарутиным, настаивали у Кутузова об исполнении предложения Дорохова. Кутузов не считал нужным никакого наступления. Вышло среднее, то, что должно было совершиться; послан был в Фоминское небольшой отряд, который должен был атаковать Брусье.
По странной случайности это назначение – самое трудное и самое важное, как оказалось впоследствии, – получил Дохтуров; тот самый скромный, маленький Дохтуров, которого никто не описывал нам составляющим планы сражений, летающим перед полками, кидающим кресты на батареи, и т. п., которого считали и называли нерешительным и непроницательным, но тот самый Дохтуров, которого во время всех войн русских с французами, с Аустерлица и до тринадцатого года, мы находим начальствующим везде, где только положение трудно. В Аустерлице он остается последним у плотины Аугеста, собирая полки, спасая, что можно, когда все бежит и гибнет и ни одного генерала нет в ариергарде. Он, больной в лихорадке, идет в Смоленск с двадцатью тысячами защищать город против всей наполеоновской армии. В Смоленске, едва задремал он на Молоховских воротах, в пароксизме лихорадки, его будит канонада по Смоленску, и Смоленск держится целый день. В Бородинский день, когда убит Багратион и войска нашего левого фланга перебиты в пропорции 9 к 1 и вся сила французской артиллерии направлена туда, – посылается никто другой, а именно нерешительный и непроницательный Дохтуров, и Кутузов торопится поправить свою ошибку, когда он послал было туда другого. И маленький, тихенький Дохтуров едет туда, и Бородино – лучшая слава русского войска. И много героев описано нам в стихах и прозе, но о Дохтурове почти ни слова.

Многие не знают, что такое графомания и кто может иметь такую проблему. Графомания встречается часто. Важно разобраться, кто такой графоман, какие симптомы присущи такому человеку, и как избавиться от патологии.

Основные признаки

Графомания – это непреодолимое желание, патологическое стремление к написанию бесплодных текстов, которые не несут никакого богатства обществу.

Страдающий этой зависимостью нуждается в постоянном написании чего-либо, даже если в этом нет определенного смысла и результат не оправдывает ожидания.

Результаты работы таких людей не представляют никакого интереса для критиков, издателей, читателей.

Главным для такого человека является не результат, а сам процесс написания. Любой такой человек уверен в совершенстве своих работ. Он уверен, что те, кому не нравятся его работы, – просто не доросли до такой высокой литературы. Такие читатели, по мнению графомана, не могут верно оценить всю гениальность произведений искусства. Психиатры выделили несколько признаков настоящего графомана:

  • пишет только для того, чтобы писать;
  • не воспринимает конструктивную критику;
  • демонстрирует свои комплексы в произведениях;
  • не учитывает и не знает литературных традиций;
  • не читает ничего кроме своих работ;
  • не умеет полноценно и долго работать над одним произведением.

Графоман не мыслит себя без творчества. Он не задумывается о том, что его работы никому не нужны. С помощью произведения писатель реализует себя. Он описывает себя в качестве главного героя. Если такая личность имеет комплекс по поводу своей внешности, то главный герой его произведения будет идеалом красоты. Поэтому содержанию произведения можно узнать о психологических проблемах такого автора.

Отличительные черты писателя

Каждый профессиональный писатель, прежде чем издать произведение, несколько раз перечитывает его и делает массу правок. Графоман же уверен, что его работа безупречна и не нуждается в дополнительных изменениях.

В работах профессиональных писателей несколько сюжетных линий, несколько разных образов и характеров. Графоманы же в своем произведении развивают лишь одну тему и не раскрывают в полной мере характеры героев. Это со временем надоедает читателю и поэтому такая книга становится невостребованной.

Профессиональный писатель знаком с литературной традицией, знает много произведений других авторов, знает каноны построения текста. Графоман же не имеет и не хочет иметь такого знания. Поэтому его произведения содержат много ошибок и не выходят на должный уровень.

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

Особенности рабочего процесса

Графоман ведет личный дневник, но не следует думать, что все, у кого есть дневник, являются носителями этого заболевания. Обычный человек записывает в личный дневник свои переживания и радости, это нормально, порой это спасает его от одиночества. У человека есть друзья и знакомые, которые могут выслушать все проблемы, а у графоманов таких людей нет. Чем больше записей такой человек делает в своем дневнике, тем стремительнее он отдаляется от общества.

Из-за постоянного одиночества он начинает чувствовать себя не таким, как все. Это и провоцирует формирование у личности сознание того, что он гениален. Вследствие этого он не может адекватно воспринимать конструктивную критику. Он отделяет себя от обычных людей, говоря о том, что они просто не понимают ничего в творчестве. Если вы распознаете графомана и кажете ему об этом, он будет отрицать это. Спор с ним не принесет необходимого результата.

Графоманы могут вести блоги, но они не являются востребованными среди пользователей интернета.

Причины

Основными причинами формирования графомании являются:

  • неуверенность в себе;
  • стремление к мудрствованию;
  • обособленность и отстраненность от окружающих.

В итоге одинокий, неуверенный в себе человек с низкой самооценкой не может найти человека, который смог бы с ним общаться. Все свои переживания в таком случае он переносит на бумагу.

Графомания выступает как особая форма рассказа и своих переживаниях, но не человеку, а бумаге. Таким образом, чем дольше человек страдает этой проблемой, тем обособленней он становится. С каждым днем такой человек все больше перестает ценить реальное, живое общение с искренними людьми. Исчезает любое стремление графомана найти общий язык с окружающими.

Такой индивид вызывает чувство жалости у окружающих. Его творения вызывают умиление и чувство восторга только у него. Поэтому он болезненно реагирует на критические высказывания со стороны окружающих.

Успешные писатели всегда учитывают мнение читателей и это стимулирует их дальнейший карьерный рост и позволяет совершенствоваться. Графоманы же этого лишены, поэтому их работы так и остаются невостребованными, ни для кого не интересными на протяжении длительного времени.

Методы лечения

Стремление к бесплодному написанию текстов лечится в зависимости от запущенности заболевания и его проявления.

  • Начинающему графоману отлично помогает поиск нового хобби или интересного для него занятия. Если вы заметили, что ваш близкий человек начинает проявлять первые признаки графомании, следует отвлечь его и предложить новое занятие.
  • Человек с тяжелой формой заболевания нуждается в более сложном лечении. Обычно в таком случае необходима психотерапевтическая диагностика, по результатам которой назначается медикаментозное лечение. В качестве медикаментозных средств назначаются психотропные препараты нейролептического действия.
  • Среди психологических методик действенной окажется семейная терапия или даже когнитивно-поведенческая терапия. Эти методики направлены на то, чтобы графоман избавился от неуверенности в себе и выработал смелость в себе смелость. Близкие люди во время лечения должны поддерживать больного, не обижаться на его резкие высказывания. Но нельзя навязывать ему свое общение, такие личности этого не любят.

Таким образом, можно сделать вывод, что графомания – это заболевание, которое можно вылечить. Все зависит от самого пациента и помощи его близких людей.




Top