Board.KolibriOS.org

Official KolibriOS board
It is currently Sun Apr 05, 2020 1:06 am

All times are UTC+03:00




Post new topic  Reply to topic  [ 28 posts ]  Go to page 1 2 Next
Author Message
PostPosted: Mon Feb 27, 2006 1:20 am 
Offline
Site Founder
User avatar

Joined: Sun Aug 08, 2004 8:55 am
Posts: 690
В свете происходящих вокруг нас событий, и из-за нескрываемой личной заинтересованности, возник вопрос: нужен ли нам Си-компилятор. Не для ядра, а именно для приложений. И не Си++, а именно Си. Реализация его не должна быть сложной (взять для примера хотя бы SmallC), и даже если с первого раза он не будет генерить супер-оптимальный код, это позволит ускорить разработку программ. Причём программ несколько более высокого уровня, чем сейчас: текстовых процессоров (!не редакторов!), СУБД и т.п.
Если кто-то соберётся с мыслями, и решит, как и я, что это нужно, - буду рад помочь.
Надеюсь, вы не подумаете обо мне как об отступнике... Я подумал, что это нездОрово - когда есть спрос, но нет предложения.
Чтобы никто не подумал, что я один такой - нас 4 человека.

_________________
in code we trust


Top
   
 Post subject:
PostPosted: Mon Feb 27, 2006 2:10 am 
Компилятор языка высокого уровня, который работает непосредственно под МеОС/Колибри, конечно нужен. Это сильно ускорит написание программ. Мне, правда, больше нравятся языки подобные Паскалю. Их удобнее читать даже когда нет коментариев. Созданием транслятора некого гибрида Модулы и С для МеОС я сейчас занимаюсь. Но если С вам нужнее, то могу переключится на С. Кстати, Майк, ты не мог бы прислать мне исходники своего Паскаля. Уж больно мне они интересны.


Top
   
 Post subject:
PostPosted: Mon Feb 27, 2006 3:42 am 
Offline
Site Founder
User avatar

Joined: Sun Aug 08, 2004 8:55 am
Posts: 690
Конечно могу, только вот комментариев там не густо. Написан он на Си (MSVC).


Top
   
 Post subject:
PostPosted: Mon Feb 27, 2006 10:59 am 
А есть у ковонить спецификация ANSI C?? Желательно на великом и могучем...


Top
   
 Post subject:
PostPosted: Mon Feb 27, 2006 5:08 pm 
Andryuha
Я могу дать тебе статью, в которой описывается как можно программировать под Menuet на Free Pascal 2.0.0 (я использовал этот подход для тестирования менеджера памяти - тестирующая часть была на паскале и легко проверяла все инварианты, а тестируемая часть была на ассемблере). Компилировать программы (точнее паскалевскую часть программы) приходится в windows.


Top
   
 Post subject:
PostPosted: Mon Feb 27, 2006 7:14 pm 
mike.dld
А кто запрещает писать? Я никогда не был против идеи писать на СИ приложения (хотя сам вряд ли буду это делать). Пусть пишут люди, если это будет хорошая вещь и не будет страшно раздутая по объему конечного генерируемого кода, то я совсем не против. Другой вопрос, что тут же появятся некоторые "умные" люди и будут канючить "а почему у вас нету библиотек из: Windows, Linux и тд." А вот это уже будет форменное свинство с их стороны. Так как в этом случае не только нарушается лицензия (в некоторых случаях), но и код раздувается неимоверно. Придется тогда вам и библиотеки самим писать.
А так я совсем не против, даже интересно во что это выльется, если в приток программистов то весьма хорошо. :-)


Top
   
 Post subject:
PostPosted: Tue Feb 28, 2006 2:40 pm 
to halyavin
Попробовать писать на Free Pascal программы для Menuet мне интересно. Давай статью сюда:
an007[at]bk[dot]ru


Top
   
 Post subject:
PostPosted: Wed Mar 01, 2006 4:49 am 
Offline

Joined: Fri Jan 06, 2006 6:05 am
Posts: 102
Если можно сюда тоже :)
bendik@bk.ru


Top
   
 Post subject:
PostPosted: Wed Mar 01, 2006 7:18 am 
Ну и мне за компанию: slackofil [at] gmail [dot] com


Top
   
 Post subject:
PostPosted: Wed Mar 01, 2006 7:43 am 
Offline
Site Founder
User avatar

Joined: Sun Aug 08, 2004 8:55 am
Posts: 690
Прошу не засорять тему. Насчёт FPC Халявин прожужжал мозги всем, кому только можно, и если вы не видели, например, этого поста, найти статью можно было бы и в гугле по запросу MenuetOS "Free Pascal" ассемблер


Top
   
 Post subject:
PostPosted: Wed Mar 01, 2006 8:14 am 
Миша не ругайся :-)
Дык ващето да, тема то про Си когдато была ;-)


Top
   
 Post subject:
PostPosted: Wed Mar 01, 2006 2:16 pm 
почему не С++?


Top
   
 Post subject:
PostPosted: Wed Mar 01, 2006 4:01 pm 
Offline
Site Founder
User avatar

Joined: Sun Aug 08, 2004 8:55 am
Posts: 690
Потому что пока что не C++. Не хочется слишком уходить от реальности. Думаю, ты согласишься, что C - более низкоуровневый язык. К тому же, результат должен быть получен довольно быстро, а если начать реализовывать С++ - можно и не дождаться окончания. По моим оптимистическим расчётам, рабочая версия может появиться в течение 3-4 месяцев слаженной работы. Сразу захотелось об этом сказать, чтобы не задавали вопросы каждый день.


Top
   
 Post subject:
PostPosted: Wed Mar 01, 2006 6:12 pm 
mike.dld
Та статья устарела с выходом новой версии компилятора... Послал всем интересующимся простейший пример для новой версии.

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

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

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

PS А кто эти 4 человека, которые готовы начать писать компилятор?


Top
   
 Post subject:
PostPosted: Wed Mar 01, 2006 6:22 pm 
Offline
Kernel Developer
User avatar

Joined: Mon Nov 28, 2005 8:00 pm
Posts: 1601
Формат объектных файлов? Есть несколько разных форматов. В частности, лично мне известны форматы COFF и OMF (оба - по документации от Microsoft).


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 28 posts ]  Go to page 1 2 Next

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Limited