Компания AdaCore выпустила (https://libre.adacore.com/dynamic/gnat_gpl_edition.html) новую GPL версию компилятора языка Ада. Новый компилятор полностью поддерживает стандарт Ада 2005.
Вместе с компилятором обновился и GPS - Gnat Programming Studio, IDE для Ада, написанная на GTK.URL: https://libre.adacore.com/dynamic/gnat_gpl_edition.html
Новость: http://www.opennet.me/opennews/art.shtml?num=10794
А баги в этом компиляторе уже все извели?. А то я помню как-то было время, когда почти каждую неделю в компилере новый баг находили.
И еще забыл сказать. В ада объекно-ориентированность есть, но сделана через задницу. После С++ очень тяжело ее понимать. И наоборот, после ады тяжело переходить на си++.
Позвольте узнать, а какой компилятор Ады менее глючный?
Если они все глючные, то как тогда можно говорить о преимуществах этого языка если сам компилятор не иожет их обеспечить.
Гы...
тогда лчуше вообще не программировать....
как ни странно, компилятор тоже пишут люди, которым свойственно ошибаться..
А для чего хорош Ада и кто его использует?
>А для чего хорош Ада и кто его использует?http://ru.wikipedia.org/wiki/Ада_(язык_программирования)
"По утверждению Стефена Цейгера, разработка программного обеспечения на Аде в целом обходится на 60 % дешевле, а разработанная программа имеет в 9 раз меньше дефектов, чем при использовании языка Си.
Разработавшая язык группа под руководством француза Жана Ишбиа назвала его «Ада» в честь Огасты Ады Кинг Лавлейс (дочери поэта Дж. Байрона), которая считается первым программистом в мире за разработку программ для вычислительной машины Бэббиджа".
Ада очень сильно типизирован. И кроме того сам компилятор выполняет очень много проверок как во время компиляции так и во время исполнения.
Для очень больших проектов ада действительно может дать выигрыш с уменьшением затрат на отладку.
Но кроме этого нельзя забывать, что для си++ есть очень мощные профилировщики и анализаторы кода. Которые позволяют обнаруживать утечки памяти, блокировки ресурсов, анализировать покрытие кода и т.д. Для Ады в принципе такие тоже есть, но они очень кривые и у них очень плохая юзабельность.
Кроме этого у Ады довольно сложная семантика языка, и она еще более усложнилась с выходом стандарта 2005года. Поэтому подготовка нового специалиста для фирмы обойдется потерей нескольких месяцев. А на С++ гораздо проще найти уже готового специалиста, знающего этот язык.
Но самый большой косак который сводит все преимущества ады на "нет" в том, что господа из АДАкоры пишут очень глючный компилятор. И порой очень много времени уходит на то, чтобы локализовать баг в компиляторе и выслать его французам, чтобы они его залатали.
Еще одна положительная черта ады это наличие документа Ada Style Guide. Мне кажется плохо что для С++ нету чего-то подобного.
Еще в одной книженции по с++ (по моему у Гради Буча), наткнулись на фразу что с++ плохо подходит для нвписания высоконадежных програм, и в пример приводилась АДА, так у наших сиплюсплшников истерика была :)
>А для чего хорош Ада и кто его использует?
А как он по сравнению с gcc для ada?
Не понял вопроса. Но скажу что внутри gcc для компиляции адских программ используется как раз адакоровкий глючный компилятор.
То есть gcc с ним линкуется?
Или это форк?
Расскажите по-подробнее плиз - весьма интересно, особенно в свете следующей новости...
http://gcc.gnu.org/ там прямо на второй строчке сказано, что компилятор ады ваходит в состав гцц.
Ну тогда уж и это:
http://en.wikipedia.org/wiki/Ada_programming_language
Секция "Criticism / The Ariane 5 failure" ...
Та ракетка упав сильно придавила репутацию Ады как безопастного и error-prone языка :(
Так что не надо песен! В ИТ есть мудрость - "нет секурных ОС, есть секурные админы", то же применимо и к языкам\программерам :)IM_N_HO.
Немного странные выводы на википедии:
- перетащили ненужный год, без проверки
- неудосужились написать код для обработки злосчастного исключенияи Ада виновата :)
Вполне в духе ярых поклонников ада:
- забыли освободить память
- не удосужились проверить выход за границы массиваи Си виноват :)
Ада по своему не плох, хотя очень строгая типизация ещё не панацея и, тем более, не повод для фанатичного бреда о полном превосходстве над другими языками, чем грешат некоторые из знакомых адовцев.
>Ада по своему не плох, хотя очень строгая типизация ещё не панацея
>и, тем более, не повод для фанатичного бреда о полном превосходстве
>над другими языками, чем грешат некоторые из знакомых адовцев.
И не повод как видим орать о безопасности.Облажаться по крупному можно даже на языках где программа на VM работает.Тот же Sun например честно предупреждает что Java не предназначена для mission-critical применений и применений где отказ системы может вызвать человеческие жертвы.
Для тех, кому лень сходить по ссылке:"Management of the Ariane 5 project had decided that since the same program worked well for all the flights of the Ariane 4 it would be reused directly, without being adapted, for the Ariane 5."
Т.е. манагеры виноваты, а не программеры.
При чем здесь язык? А строгая типизация -- это самое главное достижение архитекторов языка.
А generic пакеты? с++ страуструп на этой идее шаблоны сделал
а tasks пакеты? вон уже и в c# можно методы описывать что бы в отдельном потоке выполнялись (не силен, не помню точно как оно)а строгая типизация действительно хорошая вещ, а то вон в с++ char и byte это одно и тоже, подтип на основе стандартного не определиш, я в свое время наткнулся с мапингами в corba, когда нельзя одну и туже функцию в с++ перегрузить с разными типами множеств, а в corba можно, код генерится, а не компилируется
так это было еще когда!!!