Всем привет! Давно уже загоняюсь написанием компилятора C++. Пишу давно -
начал на паскале с кучей асма в коде, а потом переписал на C++ под linux.
Архитектура у него прекрасная - кому интересно расскажу. Мне в принципе пофиг нужен ин кому-нибудь - я для себя пишу(историю тоже отдельно могу потом написать), но интересно: может кто заинтересовался. В кратце о нём:
непосредственное ассемблирование отделено от анализа семантики, т.е. можно ассемблировать под любой проц.(я могу описать пока только для intel)
ассемблер использую nasm. файлы компилятся паралельно, опции от gcc и т.д.
Ну так что? Может черканет кто словечко? (это от автора темы)
>Ну так что? Может черканет кто словечко? (это от автора темы)
Несколько не понятен вопрос - чего черкать-то?
Если интересует вопрос заинтересованности общественности в каких-либо конкретных дополнениях к имеющимся компиляторам (к тому же gcc), то от себя могу сказать что меня пока вроде все устраивало... Возможно разве что необходима доработка каких-либо вспомогательных инструментов - визуальной среды разработки (как KDevelop) или создание удобного и универсального отладчика (как SoftIce)... а по самому компилятору так даже и предложить нечего.
>>Ну так что? Может черканет кто словечко? (это от автора темы)
>Несколько не понятен вопрос - чего черкать-то?
>Если интересует вопрос заинтересованности общественности в каких-либо конкретных дополнениях к имеющимся компиляторам
>(к тому же gcc), то от себя могу сказать что меня
>пока вроде все устраивало... Возможно разве что необходима доработка каких-либо вспомогательных
>инструментов - визуальной среды разработки (как KDevelop) или создание удобного и
>универсального отладчика (как SoftIce)... а по самому компилятору так даже и
>предложить нечего.В графическом интерфейсе могу посоветовать "anjuta" - обалденная среда разработки! Отладчик, куча опций, мощный радактор. А насчет gcc - меня страшно не устраивют его ассемблерные вставки. Я привык к стилю NASM. А так я пишу его для развитя мозгов и вообще мастрества программирования, а в будущем толкну его как курсовой или дипломный проект. Для этой цели он просто сногшибателен. Так то по жизни я загоняюсь операционными системами (их разработкой), давно как-то начал писать ос на асме, но надоело страшно , извращалься с макросами nasm'а, потом ещё один модуль препроцессирования для него сделал, а теперь вот компилятор пишу. По сути клон gcc. Он меня тоже устраивает, но свой роднее 8)
>... А насчет gcc - меня страшно не устраивют
>его ассемблерные вставки. Я привык к стилю NASM.Выскажу свое мнение:
Ассемблерные вставки в код на С/С++ - это офигенное зло. Результатом становится нечитаемый код с кучей макросов и головная боль у того, кто вздумает в программе разобраться. Никогда их не используйте - этим вы сэкономите много времени и себе, и другим людям.Если надо что-то реализовать на ассемблере - это надо делать в ОТДЕЛЬНОМ ФАЙЛЕ. Результат компиляции должен подключаться на этапе компоновки. И с обязательной реализацией этих же функций в файле на С с возможностью выбора между файлами на С и Ассемблере на этапе компиляции. Результат такого подхода: чистый код, нет макросов, легко достижимая кроссплатформенность, легксть в модернизации и отладке. Ошибок, кстати, тоже будет меньше.
>Всем привет! Давно уже загоняюсь написанием компилятора C++.
>Архитектура у него прекраснаяНе говори гоп пока не перепрыгнешь. Учитывая предыдущие Ваши комментарии: http://www.opennet.me/openforum/vsluhforumID9/5045.html#2 ,- о переспективе развития данного компилятора складываются "Ой" какие нехорошие мысли. Поверьте, ничего лично...
>Всем привет! Давно уже загоняюсь написанием компилятора C++. Пишу давно -
>начал на паскале с кучей асма в коде, а потом переписал на
>C++ под linux.
>Архитектура у него прекрасная - кому интересно расскажу. Мне в принципе пофиг
>нужен ин кому-нибудь - я для себя пишу(историю тоже отдельно могу
>потом написать), но интересно: может кто заинтересовался. В кратце о нём:
>
>непосредственное ассемблирование отделено от анализа семантики, т.е. можно ассемблировать под любой проц.(я
>могу описать пока только для intel)
>ассемблер использую nasm. файлы компилятся паралельно, опции от gcc и т.д.
>Изучили бы Вы для начала матчасть. Книжки почитали, стандарт Си++, может даже бы и на GCC посмотрели. А там, глядишь, и сами посмеялись бы над этим своим постом...
Вообще то он пока полностью совместим c gcc в плане семантики c++. А с gcc я вообще достаточно довно работаю. И книжек я тоже достаточно прочитал. А смеюсь я обычно над своим кодом, писаным где-то полгода назад. Фактически последний раз я посмеялся над своим компиляторм написаным еще на паскале - вот уж действительно дохлое дело 8). По сути щас переписал все, начав практически с нуля. С++ я знаю прекрасно и пишу только на нем, на асме вставки мне не нужны(писал когда-то примитивное ядрышко на С, и gcc'ые вставки меня не порадовали) Препрочессор полностью работоспособен - я отмучил его на всех *.h из /usr/include. Всё нормально. Создал хорошую модель для хранения данных компиляции в одной структуре(естесственно с объединениями, но это мелочи). И знаете, пока мне не смешно. Вообще для 16-летнего парня это весьма неплохие успехи, а если я кого-то насмешил своими коментами - я тоже этому рад, может у меня приколы такие 8) Короче топик полулся кривой - не спорю, лучше через пол годика(или раньше) выложу компилер, там и посмотрим [кому книжки читать]... Все - тема закрыта. Прошу простить великодушно, если слегка вульгарно высказался, всего всем наилучшего.
>Вообще то он пока полностью совместим c gcc в плане семантики c++.
>А с gcc я вообще достаточно довно работаю. И книжек я
>тоже достаточно прочитал. А смеюсь я обычно над своим кодом, писаным
>где-то полгода назад. Фактически последний раз я посмеялся над своим компиляторм
>написаным еще на паскале - вот уж действительно дохлое дело 8).
>По сути щас переписал все, начав практически с нуля. С++ я
>знаю прекрасно и пишу только на нем, на асме вставки мне
>не нужны(писал когда-то примитивное ядрышко на С, и gcc'ые вставки меня
>не порадовали) Препрочессор полностью работоспособен - я отмучил его на всех
>*.h из /usr/include. Всё нормально. Создал хорошую модель для хранения данных
>компиляции в одной структуре(естесственно с объединениями, но это мелочи). И знаете,
>пока мне не смешно. Вообще для 16-летнего парня это весьма неплохие
>успехи, а если я кого-то насмешил своими коментами - я тоже
>этому рад, может у меня приколы такие 8) Короче топик полулся
>кривой - не спорю, лучше через пол годика(или раньше) выложу компилер,
>там и посмотрим [кому книжки читать]... Все - тема закрыта. Прошу
>простить великодушно, если слегка вульгарно высказался, всего всем наилучшего.если это всё прикол, то респект - прикол офигенный
>если это всё прикол, то респект - прикол офигенныйЧем бы дитятко ни тешилось, лишь бы не плакалО.
Вы, любезный, или гений, каких один на миллиард (без преувеличений). Что, конечно, в принципе возможно, но крайне маловероятно. Или шутка действительно забавна. Или, что мне представляется наиболее вероятным, не совсем понимаете, что делаете. А обижаться не нужно - это не конструктивно... и вообще бессмысленно.