Вариант создания компиляторa Си

High-level languages programming questions
  • Компилятор языка высокого уровня, который работает непосредственно под МеОС/Колибри, конечно нужен. Это сильно ускорит написание программ. Мне, правда, больше нравятся языки подобные Паскалю. Их удобнее читать даже когда нет коментариев. Созданием транслятора некого гибрида Модулы и С для МеОС я сейчас занимаюсь. Но если С вам нужнее, то могу переключится на С. Кстати, Майк, ты не мог бы прислать мне исходники своего Паскаля. Уж больно мне они интересны.
  • Конечно могу, только вот комментариев там не густо. Написан он на Си (MSVC).
  • А есть у ковонить спецификация ANSI C?? Желательно на великом и могучем...
  • Andryuha
    Я могу дать тебе статью, в которой описывается как можно программировать под Menuet на Free Pascal 2.0.0 (я использовал этот подход для тестирования менеджера памяти - тестирующая часть была на паскале и легко проверяла все инварианты, а тестируемая часть была на ассемблере). Компилировать программы (точнее паскалевскую часть программы) приходится в windows.
  • mike.dld
    А кто запрещает писать? Я никогда не был против идеи писать на СИ приложения (хотя сам вряд ли буду это делать). Пусть пишут люди, если это будет хорошая вещь и не будет страшно раздутая по объему конечного генерируемого кода, то я совсем не против. Другой вопрос, что тут же появятся некоторые "умные" люди и будут канючить "а почему у вас нету библиотек из: Windows, Linux и тд." А вот это уже будет форменное свинство с их стороны. Так как в этом случае не только нарушается лицензия (в некоторых случаях), но и код раздувается неимоверно. Придется тогда вам и библиотеки самим писать.
    А так я совсем не против, даже интересно во что это выльется, если в приток программистов то весьма хорошо. :-)
  • to halyavin
    Попробовать писать на Free Pascal программы для Menuet мне интересно. Давай статью сюда:
    an007[at]bk[dot]ru
  • Если можно сюда тоже :)
    bendik@bk.ru
  • Ну и мне за компанию: slackofil [at] gmail [dot] com
  • Прошу не засорять тему. Насчёт FPC Халявин прожужжал мозги всем, кому только можно, и если вы не видели, например, этого поста, найти статью можно было бы и в гугле по запросу MenuetOS "Free Pascal" ассемблер
  • Миша не ругайся :-)
    Дык ващето да, тема то про Си когдато была ;-)
  • почему не С++?
  • Потому что пока что не C++. Не хочется слишком уходить от реальности. Думаю, ты согласишься, что C - более низкоуровневый язык. К тому же, результат должен быть получен довольно быстро, а если начать реализовывать С++ - можно и не дождаться окончания. По моим оптимистическим расчётам, рабочая версия может появиться в течение 3-4 месяцев слаженной работы. Сразу захотелось об этом сказать, чтобы не задавали вопросы каждый день.
  • mike.dld
    Та статья устарела с выходом новой версии компилятора... Послал всем интересующимся простейший пример для новой версии.

    На счет С++ - подход правильный. Вспомните о шаблонах и исключениях (а также о автоматическом вызове деструкторов при выходе из области видимости).

    Думаю, лучше всего писать компилятор на С (используя кросс-платформенную компиляцию, благо есть аж 2 метода сделать это) - потом можно будет уже разрабатывать компилятор на самом себе. Однако есть еще одна проблема, которую надо решить сразу - кто-нибудь знает формат объектных файлов? А так же нужно будет написать линкер (на иностранном форуме была ссылка, но она уже не действительна :( ) ...

    Так же интересно знает ли кто-нибудь устройство GCC (я не знаю)? Использование кода из него значительно повысило бы шансы на успех.

    PS А кто эти 4 человека, которые готовы начать писать компилятор?
  • Формат объектных файлов? Есть несколько разных форматов. В частности, лично мне известны форматы COFF и OMF (оба - по документации от Microsoft).
  • Who is online

    Users browsing this forum: No registered users and 6 guests