![]() |
|
![]() ![]() ![]() |
|
orion_sdo |
|
||||
![]() Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 12.11.2002 Где: Санкт-Петербург Репутация: нет Всего: нет |
Хм... ![]() ![]() ![]() |
||||
|
|||||
desyatnik |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 13.8.2002 Где: Мичуринск Репутация: нет Всего: нет |
Ну как же так? Из бесплатно распространяемых - GNAT; не особо дорогая
также ObjectAda. В IDE a'la C++Builder особой необходимости я никогда не видел, но у ObjectAda и это есть. IMHO jEdit - лучший друг программиста ![]() И где, кстати, отличные среды разработки для C++ или Delphi? Сам Delphi? После jEdit и Emacs иначе как уродством ЭТО я назвать не могу. Конечно, визуально компоненты по форме кидать удобно... Но это - НЕ программирование. По крайней мере не то программирование, где выбор языка играет хоть какую-то роль (наглядный пример - Visual Basic). А Аду изучать надо. Хотя бы - чтобы знать, какой кривизной на самом деле являются Object Pascal и C++. Да и Java по большому счёту, хотя с ней ещё не всё потеряно ![]() --------------------
WBR, Dejrgris |
|||
|
||||
Vit |
|
|||
![]() Vitaly Nevzorov ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 10964 Регистрация: 25.3.2002 Где: Chicago Репутация: нет Всего: 207 |
Заинтересовали вы меня, скачал ObjectADA, поставил себе, попробовал (до этого никогда её в глаза не видел). Впечатления следующие:
1) ничего не могу сказать о самом языке, так как я его не знаю, и не чего не писал. По внешнему виду ощущается большое сходство с Паскалем, причём различия скорее в лучшую сторону, на мой непосвященный взгляд читабельность кода даже несколько выше чем Паскаля. 2) Среда разработки напоминает среды от MS или Борланда 4х-5ти летней давности, но в принципе вполне терпимые (естественно, что я за 5 минут не смог оценить все возможности - это лишь беглая оценка инструментария и того что на виду) 3) Потрясающая скорость компилляции заставила вспомнить аналогичный процесс на компьютере типа ДВК выпуска 1985 года: 17ти килобайтный исходный код проекта (около 400 строк кода) на PII-230/512RAM компиллировался никак не меньше минуты 4) Объём полученного EXE файла тоже впечатлил - около 650 килобайт Для тестирования брался прилагавшийся Sample - keylook - девственно чистое виндовое окно выводятся (почти как в терминале) сообщения о нажатых клавишах. Другой Samle - демонстрирующий рисование разных фигур в трёх окнах тоже был крут - компиллировался ещё раза в 3 дольше, а размер exe получился уже более полутора метров... -------------------- With the best wishes, Vit I have done so much with so little for so long that I am now qualified to do anything with nothing Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru |
|||
|
||||
desyatnik |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 13.8.2002 Где: Мичуринск Репутация: нет Всего: нет |
1) читабельность Ады действительно лучше, чем у Паскаля (который считается одним из предков ![]() 3) ObjectAda не пользовался, поэтому сказать ничего не могу. GNAT работает несколько шустрее GCC (2.9 или 2.8, точно не помню). 4) возможно, это отладочная информация. Или runtime. GNAT опять-таки даёт вполне пристойные результаты (хотя и хуже, чем GCC). --------------------
WBR, Dejrgris |
|||
|
||||
COLOMBO |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 36 Регистрация: 26.11.2004 Репутация: нет Всего: нет |
А я не слышал про ADA!
![]() |
|||
|
||||
stab |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 1839 Регистрация: 1.1.2003 Репутация: нет Всего: 48 |
Вот в одном ФАКе нашел такие строки:
Как я понял до версии 95 ООП не было, т.е. был строгий процедурный язык. Что такое п.1, п.3, п.4, п.5 понятно, а вот что такое п.2? И может кто-нибудь объянисть в чем собственно премимущества Ada перед, скажем, C# или C++? Просмотрев примеры для начинающих, увидел только раздутый синтаксис обычного Pascal. Я понимаю, что на таких примерах всего сразу не покажешь, но эти примеры мне напомнили следующее: Asm: mov EAX, 0 AdaAsm: move integer value 0 into register named EAX located in the central processing unit Мне кажется это не ведет к бОльшей надежности. ![]() В чем же революционные идеи? Чесслово очень хочу это понять... -------------------- 6, 6, 6 - the number of the beast. |
|||
|
||||
manu |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 39 Регистрация: 14.10.2004 Репутация: нет Всего: 3 |
[из предисловия к книге Ал. Стивенса "ТЕХНИКА ПРОГРАММИРОВАНИЯ НА ТУРБО СИ"]
В данной книге вы столкнетесь с программами, написанными на языке Си. Это замечательный язык, и хотя некоторым он не нравится, но все же большинство программистов его любят. На Си вы можете создавать программы, которые делают все, что вы пожелаете. Нет другого такого языка, который бы так же стимулировал к программированию. Создается впечатление, что остальные языки программирования воздвигают искусственные препятствия для творчества, а Си - нет. Использование этого языка позволяет сократить затраты времени на создание работающих программ. Си позволяет программировать быстро, эффективно и предсказуемо. Еще одно преимущество Си заключается в том, что он позволяет использовать все возможности вашей ЭВМ. Этот язык создан программистом для использования другими программистами, чего о других языках программирования сказать нельзя ............ ................................................................. ................................................................. ...создан таким, чтобы менеджеры могли разбираться в написанных этом языке программах; Бэйсик был создан для непрограммистов; Фортран - для научных работников; Ада вообще был создан прямо-таки правительственным комитетом; Пайлот создан для учителей; Паскаль - для студентов; Лого - для детей; АПЛ - для марсиан; Форт, Лисп и Пролог - специализированные языки. Один Си - это язык для программистов. |
|||
|
||||
Гость_Витя |
|
|||
Unregistered |
здраствуйте а где скачать Аду и как ее поставить попробівать хочу
|
|||
|
||||
SPrograMMer |
|
|||
![]() Спамер :) ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 5.11.2004 Где: Краснодар Репутация: нет Всего: 6 |
Тута ада лежит
Если быть точнее, папочка 3.15p там кажись все что надо. Это сообщение отредактировал(а) SPrograMMer - 8.4.2005, 20:36 -------------------- животное = зверь законченный гентушник |
|||
|
||||
Denis-delphist |
|
|||
Unregistered |
Дело в том, что нельзя сравнивать ADA с JAVA и C++, так как ADA это язык программирования для электронных машин на заводах, где к примеру производят автомобили!!! Типа на нём записано, когда и куда какой красской красить!!!
![]() |
|||
|
||||
Гость_Evgeniy |
|
||||||
Unregistered |
Привет, вот читаю я ваши дискуссии..., ну отчасти приятно. Я в настоящее время учусь в Швейцарии в Высшей инженерной школе (инженера компьютерных систем и спутниковой навигации) так мы от корки до корки изучаем... правильно - АДА. И многие университеты Европы и США тоже.... |
||||||
|
|||||||
Sardar |
|
|||
![]() Бегун ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 6986 Регистрация: 19.4.2002 Где: Нидерланды, Groni ngen Репутация: нет Всего: 317 |
VHDL, тот что для проектировки железа используеться (FPGA, процы и другая логика) похож на ADA по моему. Как вывод, язык нужно знать если работать придёться с железом, доступней сразу будут *HDL языки.
-------------------- Опыт - сын ошибок трудных © А. С. Пушкин Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik Оценить мои качества можно тут. |
|||
|
||||
svg |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 53 Регистрация: 13.4.2005 Репутация: 1 Всего: 18 |
Ada очень популярный язык, просто многие не знают, что пишут именно на нем. Кто не верит - сравните описания PL/SQL от Oracle и описание Ada. За исключением SQL-специфичных операторов первый есть весьма точное подмножество второго. |
|||
|
||||
OCTAGRAM |
|
||||||||||||||||||||||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 17.12.2007 Где: Новосибирск Репутация: нет Всего: нет |
На эту тему был длинный тред на comp.lang.ada : How come Ada isn't more popular? А ещё вот : Why Ada isn't Popular От себя соглашусь с desyatnik. Популярность с достоинствами слабо коррелирует. Если вы в мире IT достаточно долго, то должны себе отдавать отчёт в этом. Чтобы там ни говорили окружающие, есть своя голова на плечах. А то получается, что, когда, большинство равняется на большинство, это попросту положительная обратная связь. Любая нелепость становится обыденностью.
По сравнению с C++ в Аде нет некоторых дебилизмов. Например, в C++ не гарантируется порядок инициализации глобальных переменных между «модулями». И глобальных переменных с конструкторами поэтому C++ программисты избегают. И я, когда пишу, тоже избегаю. Если конструктор будет использовать модуль, который ещё не инициализировался, могут быть траблы. Причём траблы могут быть, а могут и не быть. А если сейчас нет, то могут появиться позже. Или, например, есть в C99 пара фич: агрегаты и массивы с размером, не определённым на этапе компиляции. А вот C++ этого "не досталось". Нужны агрегаты — пиши конструктор для каждой структуры. Нужны массивы с размером, не определённым на этапе компиляции — используй vector. Когда я пишу на Аде, мне, слава Богу, не приходится волноваться, кому там чего "не досталось", чем заменить недостающий функционал, каких скрытых граблей надо избегать, и о прочих тупостях сяшного семейства. Если хорошо знатъ Аду, то писать на C/C++ просто не захочется. Для меня C и C++ — так же, как и ассемблер. Знать — надо. Но всерьёз что–то делать — ни в коем разе. Что касается Delphi, я находил на Quality Central штук двадцать пожеланий фич, которые есть в Аде. Это и иерархия пакетов, и RAII, и инициализация переменных там, где хочешь (блок var в некоторых исходниках порой превращается в мусорку) (declare-begin-end в Аде), и цикл for, чтоб не надо было объявлять главную переменную (и так всё понятно, какого она типа), и обобщённое программирование. Если вы Delphi программист, я уверен, вы обязательно найдёте для себя что–то, что давно хотели иметь в Delphi. Собственно, вот таким вот образом я три года назад и ушёл с Delphi. После Ады он кажется ну до того скудным и тесным. За прошедшие годы гиперссылки поменялись. Много, чего случилось. AdaCore теперь единая компания, стандарт Ada 2005 (или Ada 2007, если по дате завершения стандартизации) вышел. Где искать софт: ftp://ftp.mipt.ru/ FTP сайт ФизТеха (он же МФТИ). Там прям в корне лежит зеркало дистрибов GNAT 2007. Правда, не совсем последнее. Сейчас последнее обновление GNAT 2007-2 поддерживает Windows Vista; и ещё GNATBench, плагин для Eclipse, выложен в свободный доступ. Плюс, x86_64-linux версия доступна для скачивания. С оригинального сайта http://libre.adacore.com/ не каждый россиянин сможет скачать, там докачки нет. Ну, если что, могу любую версию GNAT 2006/2007 из тех, что на libre, через Jabber передать. ObjectAda 7.2 (если вдруг интересно) для Windows есть на http://ftp.chg.ru/pub/lang/ada/ObjectAda/ Поскольку стандарт 2005 она пока не держит, да и на Windows я давно не был, меня она не интересует.
При проектировании в язык намеренно были заложены ловушки для ошибок. Например, классика жанра:
Случайно написать подобную вещь на Аде невозможно. В C и его потомках правильную программу от ошибочной отделяет всего один–два знака! Или, например, если я пишу код, то я могу написать где–нибудь { }, а код потом позже добавить, перейти редактировать другой кусок. Или забыть добавить и так и скомпилировать. И это, вполне возможно, с виду будет работать. Потом этот кусок потеряется в глубинах проекта, и станет трудно диагностируемой ошибкой. И, когда смотришь исходники, не вспомнишь же, хотел ты дописать туда что–то или нет. Особенно, если это был не ты. А в Аде так не получится. Там между begin и end в случаях, если имелся в виду именно пустой блок, должен быть null. Поэтому можно спокойно писать код в таком порядке, в котором легче думается. Процедуры с пустыми телами пишутся просто is null; вместо is begin null; end;, так что раздутости нет. Те, кто говорит, что Ада раздутая, видимо, перед этим недостаточно думали. Для сравнения можно посмотреть на язык Cyclone. По сравнению с ним Аду очень легко читать, даже неподготовленному. А в Cyclone нужно продираться сквозь заклинания из вопросов, звёздочек, доларов, собак и т. п. Зато кратко, спору нет. Лично мне удобнее выражаться словами, чем спецсимволами. Конечно, сенсеи вроде как всегда пишут как надо, не допускают таких ошибок. Казалось бы. В действительности такие люди, если они есть, могут по праву носить синюю футболку с большой буквой S на груди. Я человек. Я осознаю, что мне свойственно делать ошибки. Поэтому от помощи компилятора отказываться не буду. На эту тему есть хорошие цитаты: Dirk's Quote Collection
Как видите, Ада — это не только язык. Это часть технологии раннего обнаружения ошибок. Чем раньше обнаружишь ошибку, тем меньше она будет стоить.
Ну и, с другой стороны, всё про ту же надёжность. Ада надёжна в том смысле, что обеспечивает run-time encapsulation. Вот C++ не обеспечивает. И производители ПО не перестают радовать нас критическими обновлениями. Java обеспечивает, но на уровне виртуальной машины. Понятно, что runtime encapsulation на уровне компилятора будет эффективнее. Что касается надёжности, в Java свои тараканы. Безопасность–то там есть, а вот приколы с синтаксисом те же самые, что у C. Что удивительно, в Java в порядке вещей кольцевой характер примитивных целочисленных типов. Если это называется надёжность, то я Папа Римский.
Why Ada isn't Popular
И для сравнения : Evolving a language in and for the real world: C++ 1991-2006
Ну и какой из языков после этого был разработан комитетом? К слову, EDG (согласно comp.lang.ada) — единственные, кто делают компиляторы, полностью соответствующие C99 и C++2003.
LOL кг/ам Автор элементарно не шарит. Чтобы Лисп был специализированным? Wiki:Lisp
Используйте эту книжонку не по назначению! Топите ею печку, ну ещё там какие возникнут потребности! Не читайте её. |
||||||||||||||||||||||
|
|||||||||||||||||||||||
Nashev |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 6.1.2008 Репутация: нет Всего: нет |
Подтверждаю, PL/SQL - очень приятная реализация АДы от Оракла, хоть и не достаточно полноценная в силу своей специализированности на тесную и высокоинтегрированную работу в контексте конкретной СУБД.
|
|||
|
||||
![]() ![]() ![]() |
Добро пожаловать в раздел "Другие языки" форума Vingrad! | |
|
Раздел посвящён различным языкам программирования, для которых (в силу невысокой популярности) нет отдельного раздела (GPSS, Lua, MATLAB, Ada, Forth, Smalltalk, Tcl, REXX, AWK и др.)
Приятного времяпрепровождения! С уважением, Void, kemiisto . |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Другие языки | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |