Компилятор с C++ для Minuet

High-level languages programming questions
  • Я знаю что тебе ответят ;)
  • SHREDER, я не так уж давно на этом форуме, но суть усвоил четко :)
    Идей хороших и плохих много, а вот программистов очень мало.. а так как проект open source (бесплатный), то каждый делает то, что ему интересно, что ему нравится, чем ему хочется заниматься.
    Тебе хочется c++ компилятор? ..пожалуйста, пиши :)

    Да и по секрету скажу, что Menuet и Kolibri - это уже разные вещи..
  • Serial wrote:SHREDER, я не так уж давно на этом форуме, но суть усвоил четко :)
    Да и по секрету скажу, что Menuet и Kolibri - это уже разные вещи..
    Ну ты посмотри исходный код, по сути все основное из Minuet.

    Я бы с удовольствием сам написал компилятор сам года этак за полтора, если бы временем располагал. Но с моей нынешней работой и уходить -темно и приходить - темно.
    Посему поставить бы где нить SVN и начать потихоньку. Можно првда поробывать уболтать руководство моей компании на девелоп компилера, но на опен сурс они никогда не согласятся.

    У кого какие идеи есть по компилеру постите, а не флеймерите типа нах нужен С++ и т.д. То что он нужен это очевидный факт.
    Если бы строители строили здания, так же как программисты пишут программы первый же залетевший дятел разрушил бы цивилизацию.
  • http://meos.sysbin.com/viewtopic.php?t=447 "Компилятор Си"
    http://meos.sysbin.com/viewtopic.php?t=565 "Tiny C Compiler"
    http://meos.sysbin.com/viewtopic.php?t=648 "Open Watcom и Kolibri SDK"
    http://meos.sysbin.com/viewtopic.php?t=658 "nasm, vc, gcc и другие"

    Давайте создадим ещё 10 тем.
  • Хочешь компилятор Си++ - помоги портировать тот, что уже доказал свою эффективность и работоспособность. Давно пора понять, что 3 одинаковых проекта всё равно когда-нибудь станут одним целым, там почему не слиться сразу, не подумать наперёд.
    Last edited by Guest on Fri Apr 06, 2007 9:07 am, edited 1 time in total.
    in code we trust
  • А кстати почему именно C++? Почему бы не сделать компилятор для языка D, например.
    http://ru.wikibooks.org/wiki/%D0%AF%D0% ... B8%D1%8F_D
  • Короче говоря дело в следующем. На самом деле компиляторов с С++ не такое уже и великое множиство, сегодня
    обще известные MSVC++, Borland, Intel, GCC. Исследования показывают что самый высококачественный код создает как не странно Borland, однако из собственного опыта замечу что сам компилятор содержит массу ошибок и посему генерирует баги в логически совершенно верном коде. Майкрософт и интел приблизительно на одном уровне (несмотря на распространенное мнение что интел лучше), а гну самый плохой (минимальная программа для Windows например просто с Win 32 API составляет аж 1 МБ тогда как борланд 13 КБ а MSVC++ 17 КБ) . Все выше перечисленное имеет свобдные версии (интел правда только для линукс). Исходный код доступен только GCC, хотя на самом деле он тоже собственность Red Hat и разрабатывается его подразделением Cygnus. Кто смотрел исходники GCC поймет что их даже собрать с помощью make тяжело, сложнее даже чем ядро линукса и намного сложнее чем Kolibri. В общем его портация и интеграция с FASM практически смысла не имеет никакого.
    Watcom умер так давно что и вспоминать не хочется, после чего и стал открытым. Компилер не подерживает много чего нового например шаблоны типа (templeate). Без этого получается не С++ а скороее С с классами.

    "nasm, vc, gcc и другие" - это как раз подход программировать под Minuet, Kolibri и другие клоны из другой ОС вчем приятного очень мало.

    Короче сейчас еть проект убогий компилер Tiny C Compiler у мну есть варианты исходников датирующихся аж 1982 годом за два года до мого рождения. Это на самом деле не компилятор а транслятор в ассемблер, уже переделаный для трансляции в FASM, посколку писать сам компилятор целиком на ассемблере уж больно долго почему бы не взять Tiny C Compiler и по пытатся написать на нем полноценный С++ компилятор? Собственно чем я по вечерам и обедам и займусь.

    Касательно IDE довольнодавно мне попался на глаза проект http://www.codeblocks.org/ весьма хорошая вещь надо сказать, исходники открыты, работает с кучей разных компиляторов. Сам проект аналог Borland C++ Builder X только лучше. Среда легко подключается к любому компилятору. К тому же среда позволяет создавать шаблоны к
    http://www.wxwidgets.org/ - отличная GUI библиотека примечательна тем что в отличие от QT интегрируется с системными компонентами GUI, а не рисует собственные. Среди девелоперов много наших (русско язычных). Можно будет портировать и для Minuet (думаю стоит об этом попросить самих девелоперов).

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

    Watcom поддерживает шаблоны. Для него написали много нового. Конечно качаство кода уступает MSVC, но за коммерческими угнаться сложно. А вот скорость компиляции очень хорошая. Дум компилируется и линкуется за 10-15 секунд
  • zhenya_k wrote:А кстати почему именно C++? Почему бы не сделать компилятор для языка D, например.
    http://ru.wikibooks.org/wiki/%D0%AF%D0% ... B8%D1%8F_D
    Потому что это самый распространенный язык программирования. Конечно D может быть чем то и лучше, но кто на нем программирует?
    Есть ли к нему такое же колличество тулзов и библиотек?
    Сколько полезных программ и технологий, которые можно портировать в Minuet, доступны в исходника D?

    Конечно С++ очень сложный язык как для изученя так и для реализации. К тому же содержит устаревшие описания из С. Стандарт языка ISO/IEC 14882 стремительно стремится к 1000 странриц. Тем не мение без С++ сегодня никак причем практически во всех областях программирования.

    2 По поводу ваткома хорошая идея бы была портировать его под Minuet и интегрировать с FASM. А сами исходные коды модернизировать для полной поддержки стандарта ISO/IEC 14882 и лучшей производительности. Code::Blocks умеет с ним работать, остается только лиш перекомпилить ее исходные коды готовым компилятором и получить готовую версию для Minuet. Лучше начинать не же начинать не с нуля!
    Кто за ?
    Если бы строители строили здания, так же как программисты пишут программы первый же залетевший дятел разрушил бы цивилизацию.
  • Я за :) (если это что то значит...)
    Чем смогу помогу (в зависимости от свободного времени и настроения/желания)
  • Тема с компиляторами языков высокого уровня поднималась много раз..........
    А чем закончилось ?
    А всё тем же - пустой болтовнёй.Делать как обычно некому.
    Уж сколько раз говорили, что написать libC надо для полного портирования компилятора в Колибри.Некоторые говорили, что это не сложно.
    Однако при этом ничего не писали,а просто созерцали, когда кто -нибудь другой займётся этим.

    SHREDER., ты разбираешься в теории компиляторов ?
    Ты когда- нибудь пробовал написать хоть простенький компилятор ?
    Если нет, то ни о каком написании компилятора и речи быть не может.Будет только пустая болтовня.
  • И внёс свой веский вклад в пустую болтовню...
  • andrew_programmer

    ....ать еслиб не разбирался то тему не поднимал бы.

    Я вот просто думаю как лучше:

    Начить все писать с нуля написав нечто с рекурсивным спуском.

    Сгенерировать YACC или FLEX лексический и синтаксический анализаторы
    получить C код, после чего написть генератор внутренних представлений
    и компоновщик. потом уже конечно нужны будут утилиты типа make и т.д.

    Взять уже готовый компилятор в исходниках и перекрутить его под minuet и FASM
    (не факт что самый простой метод).

    P.S. Просьба ко всем не равнодушным с реальным IP и не лимитированным доступом к инету, поставте SVN и видилите URL я у себя не могу т.к. в инет выхожу через прокси.
  • Чем же тебя не устраивает svn://kolibrios.org ? Нужен аккаунт - обращайся.

    И кстати, хватит писать "Minuet". ОС называется "Menuet", а ОС, разрабатываемая тут - "Kolibri".
    in code we trust
  • Who is online

    Users browsing this forum: Bing [Bot] and 7 guests