Ada_Ru форум

Обсуждение языка Ада

Re: [ada_ru] А как тут с препроцессором?

Оставить новое сообщение

Сообщения

iZEN
Re: [ada_ru] А как тут с препроцессором?
2005-07-31 15:45:39

-----Original Message-----

>From: "Vadim Godunko"<vgodunko@rost.ru>

>Sent: 31.07.05 19:34:25

>To: "ada_ru@yahoogroups.com"<ada_ru@yahoogroups.com>

>Subject: Re: [ada_ru] А как тут с препроцессором?

>

>iZEN wrote:

>>

>> http://ant.apache.org/

>>

>Интересная штука, но слишком она под Java заточена. ;)

>

>Что же касается практического использования её идей, то надо учесть что >бОльшая часть инструментов (и компилятор, и ассемблер) ориентированный >именно на одноразовый запуск. Стоит-ли их переработка в новый вариант >работы тех усилий, которые придётся затратить?

>

Зато это реальный и работающий механизм сборки кроссплатформенных приложений. XML-задание на сборку пишется один раз в одном файле build.xml. См. также возможные ответвления сборок под конкретные платформы - главное, что сам формат сборки независим от языка. Нужен только Ant или подобная машина, понимающая задание на сборку.

Как я понял, в АДА даже не слышали про универсальные машины сборки и до сих пор обходятся приблудами типа Perl и Make, устаревшими и/или не предназначенными для этого вещами.

iZEN wrote:

 

Как я понял, в АДА даже не слышали про универсальные машины сборки и до сих пор обходятся приблудами типа Perl и Make, устаревшими и/или не предназначенными для этого вещами.

 

Исторически не совсем верно. :)

 

Именно Ada ещё в начале 80-х предложила унифицированную среду разработки программ (ребята, кто помнит как этот проект назывался?) и даже в первом стандарте предполагалось много вещей из неё.

 

Жизнь показала обратное - невозможно сделать воистину унифицированную межплатформенную среду сборки. Стандарт 95-го года удалил даже термины, которые напоминали о былом проекте.

 

PS. Работы финансировались Минобороны США, а они тогда деньги не жалели...

PS. Если быть точным, то GNAT Project Files есть подобие Ant.

 

 

--

Vadim Godunko

Hello!

 

On Sun, 31 Jul 2005, Vadim Godunko wrote:

 

iZEN wrote:

 

Как я понял, в АДА даже не слышали про универсальные машины сборки и до сих пор обходятся приблудами типа Perl и Make, устаревшими и/или не предназначенными для этого вещами.

 

Исторически не совсем верно. :)

 

Именно Ada ещё в начале 80-х предложила унифицированную среду разработки программ (ребята, кто помнит как этот проект назывался?)

 

APSE и KAPSE -- расшифровку не помню.

 

и даже в первом

стандарте предполагалось много вещей из неё.

 

Жизнь показала обратное - невозможно сделать воистину унифицированную межплатформенную среду сборки. Стандарт 95-го года удалил даже термины, которые напоминали о былом проекте.

 

PS. Работы финансировались Минобороны США, а они тогда деньги не жалели...

PS. Если быть точным, то GNAT Project Files есть подобие Ant.

 

Строго говоря, если проект полностью написан на Ada'е ( или Modula'е ), то make-файлы и прочие внешние навороты для сборки программы не нужны, поскольку спецификации пакетов и списки импорта ( извините за Modula'вский термин ) содержат достаточно информации для компиляции и сборки. Во всяком случае, по моему опыту это именно так.

 

Sincerely yours Cyril Sazonov

On Sun, 31 Jul 2005 19:45:39 +0400, iZEN <izen@...> wrote:

 

...

>> http://ant.apache.org/

>>

>Интересная штука, но слишком она под Java заточена. ;)

>

>Что же касается практического использования её идей, то надо учесть что

>бОльшая часть инструментов (и компилятор, и ассемблер) ориентированный

>именно на одноразовый запуск. Стоит-ли их переработка в новый вариант

>работы тех усилий, которые придётся затратить?

>

Зато это реальный и работающий механизм сборки кроссплатформенных приложений.

XML-задание на сборку пишется один раз в одном файле build.xml. См. также возможные ответвления сборок под конкретные платформы - главное, что сам формат сборки независим от языка. Нужен только Ant или подобная машина, понимающая задание на сборку.

Как я понял, в АДА даже не слышали про универсальные машины сборки и до сих пор обходятся приблудами типа Perl и Make, устаревшими и/или не предназначенными для этого вещами.

 

чаще вообще ничем не пользуются - не зачем ;)

 

gnatmake делает все сам сразу из исходника в большинстве случаев,

(название похоже досталось в наследство ;) Я бы это назвал просто

компилятором)

ну а всякие многоплатформенные извращения это довольно редкий случай.

В большинстве случаев достаточно запустить один gnatmake, как там

называется линкер я даже и не помню ;) При этом в отличии от Ц

не надо писать каких-то завумных make файлов вообще - вся необходимая

инфа есть уже в самих программах за счет стандартных with/use и тп,

есть только определенные правила вычисления имени файла по названию

либы, которые делает сразу сам компилятор без всяких дополнительных make.

 

Тоесть в большинстве случаев вообще никаких make и не надо - сам

гнатмаке скорее ближе к умному компилятору, чем какому-то make

почти никак не связанного с программой... (на Ц наверно без майкфайла

и hello word не написать? ;) На Аде дополнительные make-файлы вообще

не нужны, если все нормально)

 

 

 

А вот по поводу всякого дополнительного барохла вопрос интересный.

Может не стоит изобретать каких-то специальных машин и тп велосипедов?

 

Тут все просто - скрипты и тп относятся к алгоритмическим языкам,

а раз так, то проще сразу писать программу на той-же Аде. Что мешает

написать то-же что делает та перловка просто как программу на Аде?

Зачем изобретать велосипеды-то? (ну максиум мож какую либу PerlFuncs

если уж он так чем-то нравится)

 

C make немного сложнее - насколько я понял, он ближе к чему-то вроде

yacc или прологоподобным языкам. Может тут тоже не изобретать велоспеды,

а тупо вместо всяких make оставить один какой-то прологоподобный язык?

(тем более все равно пригодиться, если конечно это сложно реализовать

в виде библиотеки)

 

Vladimir

-- Using Opera's revolutionary e-mail client: http://www.opera.com/m2/

Новое сообщение:
Страницы: 1

Чтобы оставить новое сообщение необходимо Зарегистрироваться и Войти