От Novik Ответить на сообщение
К Dervish Ответить по почте
Дата 27.04.2001 11:07:29 Найти в дереве
Рубрики Прочее; Современность; Евреи и Израиль; Политек; Версия для печати

Re: Не согласен...

Приветствую.

Все нижеследующее - AFAIK и IMHO :)

>Ну уж нет - вопрос вполне корректен.
>Я спрашиваю именно о языке программирования, а не о сфере применения. Почему это на Си++, джаве, бейсике или фортране нельзя писать того же что на аде - и наоборот.

Можно. Затраты разные. У каждого из языков свои преимущества и свои недостатки. В принципе, любой проект можно реализовать на Visual Basic. Вопрос, правда, сколько времени это займет, и как будет работать.

1) C++. Страуструп решил скрестить коня и трепетную лань. Т.е. к полуассемблеру добавить ОО. В результате получилось ни то ни се. Как особую изюминку унаследовал от предка препроцессор. Что дает возможность рисовать такие конструкции, что черт ногу сломит в исходном коде. Язык-ядро (Операции ввода/вывода реализуются библиотеками, нет встроенной поддержки многозадачности и т.п.) Отсутствие модульности (Конструкции с хидерами это таки не модульность).
Вообщем, конструктор "сделай сам".
Как преимущество можно назвать распространенность. Компилятор только ленивый не написал.

2) Java. Основную область применения знаете :) Преимущества - независимось от среды исполнения. Но это теоретически. На практике преимуществ нет (по крайней мере в серьезных проектах) и расспространять код приходится с конкретной VM под которую он заточен. Дохлое дело, короче. Когда вижу оракловый инсталлятор на java рука тянется к маузеру.

3) Ада. Тут Василий лучше расскажет, ибо когда я к ней имел касательство полноценного компилятора еще не существовало. Язык-оболочка. Встроенные механизмы поддержки многозадачности и т.п.
Поддержка модульности. Рабочих компиляторов не знаю. Не распространен.