Компилятор Ада83 на FPC

Обсуждаются как существующие проекты (перевод документации, информационная система и т.п.), так и создание новых.

Модератор: Модераторы

Сообщение ev » 16.08.2006 20:22:23

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

тогда уж проще писать сразу на си :lol:
ev
долгожитель
 
Сообщения: 1772
Зарегистрирован: 27.04.2005 23:19:06
Откуда: Москва

Сообщение wellx » 19.08.2006 12:10:43

Можно добавить пару копеек: Ада не столько для реальных систем, сколько для систем реального времени с повышенными требованиями к надежности и автономности. Отсюда и области применения : оборонка - ракеты, ПВО, авионика; управление воздушным движением, метро, диспетчерские службы ж.д; отдельная тема - ПО для медицины - особенно реанимация и операционные (там джаву официально сан не рекомендует использовать).

Насчет трансляции в си - так есть же GNAT - он через gcc все собирает - как раз выход через fpc сос своим компилером более интересен. а асемблер - может и получится, но зачем? вся прелесть - в стандартизации и межплатформенности. ИМХО конечно.
wellx
новенький
 
Сообщения: 67
Зарегистрирован: 06.05.2005 14:01:07

Сообщение STAKANOV » 19.08.2006 13:23:16

wellx писал(а):Насчет трансляции в си - так есть же GNAT - он через gcc все собирает - как раз выход через fpc сос своим компилером более интересен. а асемблер - может и получится, но зачем? вся прелесть - в стандартизации и межплатформенности. ИМХО конечно.

Нда, братцы. Скоро чую все на что-то типа .NET перейдут. Хотя убейте не понимаю зачем нужна прокладка такая. (Хотя идея байт кода , P-кода, JVM и т.п. стара как мир)

У меня вообще есть идея, чтоб можно было получить на выходе код запускаемый без всяких ос. Написал софтину (ПО для банкомата, ККМ, игрового автомата(рулетку электронную) и т.п.), откомпелить и получил в результате сразу загрузочный образ.

Нда, перевелись нынче хакеры :cry:

Конечно идея написать что-то типа ada2pas приходила мне в голову, но думаю, что после реализации моего проекта мне надо будет заняться утилитой pas2ada или точнее fpc2ada.

Особо выделю:
wellx писал(а):а асемблер - может и получится, но зачем?

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

ИМХО: наметилась стагнация в развитии аппартных средств и пора уже снова думать о таких вещах. :roll:

Кстати я пока тормознул проект - решил для разминки написать что простенькое - компилятор Компонентного Паскаля. Возможно не полноценный, но вдруг кому потом пригодится.
Аватара пользователя
STAKANOV
энтузиаст
 
Сообщения: 1069
Зарегистрирован: 14.05.2006 21:26:24
Откуда: Зеленоград

Сообщение shade » 19.08.2006 17:29:34

STAKANOV писал(а):Нда, братцы. Скоро чую все на что-то типа .NET перейдут. Хотя убейте не понимаю зачем нужна прокладка такая. (Хотя идея байт кода , P-кода, JVM и т.п. стара как мир)

Я тоже не понимаю :wink:
Такое ощущение, что скоро и ОСь и драйвера будут интепретироваться...

STAKANOV писал(а):Кстати я пока тормознул проект - решил для разминки написать что простенькое - компилятор Компонентного Паскаля. Возможно не полноценный, но вдруг кому потом пригодится.

Почему именно КП? Он ведь вродже тоже с прицелом на интепретацию?
А почему бы не сделать просто Паскаль (ISO 7185)? А потом расширить...
Или помочь команде FPC...
Аватара пользователя
shade
энтузиаст
 
Сообщения: 879
Зарегистрирован: 21.02.2006 20:15:48
Откуда: http://shamangrad.net/

Сообщение STAKANOV » 20.08.2006 09:44:21

shade писал(а):Почему именно КП? Он ведь вродже тоже с прицелом на интепретацию?

Прицела на интерпритацию я у него не заметил. :roll: Вообще он мне не нужен. Решил "на кошках потренероваться". :D Хотя может стоило еще попроще поискать. Может тот же паскаль ... :roll:

shade писал(а):А почему бы не сделать просто Паскаль (ISO 7185)? А потом расширить...
Или помочь команде FPC...

Моя цель - компилятор Ада.
Аватара пользователя
STAKANOV
энтузиаст
 
Сообщения: 1069
Зарегистрирован: 14.05.2006 21:26:24
Откуда: Зеленоград

Сообщение GrayEddy » 20.08.2006 17:32:27

Намерения благие, но отечественных пользователей Ada намного меньше, чем круг юзающих FPC. :wink:
Но все равно удачи. :!:
GrayEddy
постоялец
 
Сообщения: 375
Зарегистрирован: 06.05.2005 09:37:56

Сообщение STAKANOV » 21.08.2006 08:41:34

GrayEddy писал(а):Намерения благие, но отечественных пользователей Ada намного меньше, чем круг юзающих FPC

это потому что компилятора нет подходящего :wink:
Аватара пользователя
STAKANOV
энтузиаст
 
Сообщения: 1069
Зарегистрирован: 14.05.2006 21:26:24
Откуда: Зеленоград

Сообщение Alexander » 21.08.2006 11:32:35

STAKANOV писал(а):Кстати я пока тормознул проект - решил для разминки написать что простенькое - компилятор Компонентного Паскаля. Возможно не полноценный, но вдруг кому потом пригодится.


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

Удачи тебе !
Аватара пользователя
Alexander
энтузиаст
 
Сообщения: 771
Зарегистрирован: 18.12.2005 19:10:00
Откуда: оттуда

Сообщение STAKANOV » 21.08.2006 22:35:22

Alexander писал(а):А надёжность очень может
быть и Аду превзойдёт.

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

Alexander писал(а): А надёжность очень может
быть и Аду превзойдёт.

Что-то не помню таких целей у Вирта. Вот для разработчиков Ада эта цель существует.

Alexander писал(а):Кроме того это полнофункциональный язык, на
котором можно писать и низкоуровневые вещи.

У меня в руках перевод "Сообщение о языке Компанентый Паскаль". Он полнофункциональный ровно столько сколько и любой другой язык. Он лучше обычного Паскаля в плане синтаксиса. Кстати стоит вспомнит, что если бы Борлан в свое время не убил бы Turbo-Modula, то возможно мы все сейчас использовали бы CP (Модула, Оберон и Компонентный Паскаля очень мало отличаются друг от друга в синтаксисе основных конструкций)
Аватара пользователя
STAKANOV
энтузиаст
 
Сообщения: 1069
Зарегистрирован: 14.05.2006 21:26:24
Откуда: Зеленоград

Сообщение STAKANOV » 24.08.2006 23:09:02

Читая Креншоу вспомнилось -
unC0Rr писал(а):Копание в ассемблерах не лучшее времяпрепровождение на всю оставшуюся жизнь


из книги писал(а):Одно предостережение: так как я все еще не знаю достаточно об ассемблере для 80x86, все эти модули компилятора все еще будут написаны для поддержки кода 68000. Однако в программах, которые я планирую вам представить, вся генерация кода была тщательно изолирована в отдельном модуле, так что любой предприимчивый студент смог бы перенастроить их на любой другой процессор. Эта задача «оставлена как упражнение для студента».


:wink:
Аватара пользователя
STAKANOV
энтузиаст
 
Сообщения: 1069
Зарегистрирован: 14.05.2006 21:26:24
Откуда: Зеленоград

Сообщение noch » 25.08.2006 16:24:42

я думаю что написать компилятор Ада83 задача более обьемная но все же легкая чем компилятор КП.
По той простой причине что КП предполагает обьекты, и информацию о них во время выполнения at run time

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

Удачи!
Аватара пользователя
noch
постоялец
 
Сообщения: 145
Зарегистрирован: 07.06.2005 09:45:49
Откуда: Armenia

Сообщение STAKANOV » 25.08.2006 20:31:38

noch писал(а):я думаю что написать компилятор Ада83 задача более обьемная но все же легкая чем компилятор КП.
По той простой причине что КП предполагает обьекты, и информацию о них во время выполнения at run time

Я тут изучил Креншоу, нашел все ответы на вопросы, что-то попробовал. И теперь уже сам не уверен что стоит писать компилятор для КП.

Насчет информации об объектах спасибо. Я как то не дошел еще в КП до этого. Но по-моему информация об объектах во время выполнения это не такая уж и сложная вещь. :roll:

Но аргумент и правда серьезный, я Ада83 выбрал в т.ч. и потому, что без ООП.
Аватара пользователя
STAKANOV
энтузиаст
 
Сообщения: 1069
Зарегистрирован: 14.05.2006 21:26:24
Откуда: Зеленоград

Сообщение STAKANOV » 25.08.2006 20:40:10

noch писал(а):КП предполагает обьекты, и информацию о них во время выполнения at run time

Просмотрел "Сообщение о языке" - что-то не нашел ничего подобного :roll:
...
уупс ... нашел
...
реализуемо, но слишком объемно :( действительн проще уже Ада83 сделать. а потом развивать до 95 или 2005 :roll:
Аватара пользователя
STAKANOV
энтузиаст
 
Сообщения: 1069
Зарегистрирован: 14.05.2006 21:26:24
Откуда: Зеленоград

Сообщение debi12345 » 26.08.2006 16:03:48

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

Да издевается Вирт ( шутки гения ), а публика ведется. Реально-то все наоборот :
------------
С++ :

Obj1.subobj12.subsubobj13.caption=Obj1.subobj12.value;
... ( и так 100 раз )
------------
Pascal :

with Obj1,subobj12,subsubobj13 do begin
caption:= value;
.. (100 раз)
end;
------------
Уж молчу про "properties", "initialization+finalization". А более адаптированного к программистским реалиям , чем RTTI - и придумать трудно. ИМХО, применимо к "обучению" только при бурной фантазии.

Alexander писал(а):
А надёжность очень может
быть и Аду превзойдёт.

Что-то не помню таких целей у Вирта. Вот для разработчиков Ада эта цель существует.

Ну вот и выяснили - не в "качестве" языка дело ( и Ада ничуть не "лучше" Паскаля ), а в отношении СЕГОДНЯШНЕЙ команды к вопросу. Хотя пардон - простота языка тоже важна, как показывает жизнь, стоит ему мало-мальски обрасти фичами, адаптироваться к РЕАЛЬНЫМ ( высокоуровневым ) потребностям, получит спецзаказы от спонсоров - и "надежность-от-простоты" как ветром сдует.
Теперь 100% ясно, что не стоит искать некий идеальный язык ( за невозможностью создания и поддержания такового в обозримом временном интервале ) , а уж потом на нем так "развернуться", что весь мир зайдется от восторга :)

Надежность - это Assembler, ибо определяется сугубо надежностью транзисторов в процессоре, чипсете и памяти.
Аватара пользователя
debi12345
долгожитель
 
Сообщения: 5759
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Сообщение GrayEddy » 26.08.2006 20:48:23

Modula-2 рулит. :) В том смысле, что это нечто среднее между Паскалем и Адой.
Насчет надежности ассемблера - сомнительно. Ибо не было бы языков наподобие паскалевской линии, где сделан упор на надежность. Модула-2, Оберон-2, Ада - тому подтверждение.
GrayEddy
постоялец
 
Сообщения: 375
Зарегистрирован: 06.05.2005 09:37:56

Пред.След.

Вернуться в Разное

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 10

Рейтинг@Mail.ru