Мне нужно что-то высокоуровневое, обладающее некоторыми специфическими свойствами и одновременно оно должно быть 100% переносимым. Насколько я знаю, линукс написан на Си, винда поддерживает Си и микроконтроллеры используют алгоритмы на Си и Асме. Я вижу тут 2 пути развития: 1) написать расширения на Си - библиотеки, классы и т.п 2)создать "промежуточный" язык, который будет переводить мой код в си, а затем компилировать его. Хотелось бы узнать, делал ли кто-то подобный велосипед и посмотреть исходники подобных реализаций.
Интересно, что за специфические свойства такие? 100% переносим си и си++. По крайней мере, на них можно сделать ПО, которое будет компилироваться под разные системы и работать в них. Фраза просто убила. Си - это лишь некоторый синтаксис и набор правил. В любом случае, компилятор под любую систему переносит си-код в специфичный код для заданной системы. Ага, C++ с stl, boost, qt - все уже за вас написано.
Гм, не то, чтобы специфические. Скажем, в физике есть формула f=mg. Есть разные формулы для сопротивления воздуха и т.д. И если мне нужно написать что-то типа консультанта, рассчитывающего размеры, массу, объем двигателя для самолета, чтобы он сумел взлететь; будет удобнее реализовать свою систему, с удобным для решения конкретной задачи синтаксисом, которая будет автоматически преобразовывать код в нужный мне язык, нежели напрямую работать с Си или, к примеру, Асмом. Или я ошибаюсь ? p.s. прошу прощения за путаницу, мне немножко сложно выразить идею, которую я обдумываю. Я имел ввиду, что под виндой можно написать Си-код, а под калькулятором - нет.
В таких случаях пишут фрэймворки/библиотеки для собственных нужд, но никак не придумывают языки программирования.
Скриптовые языки переносимы ) например python. Java например высокоуровневый кросс-платформенный язык. На том же C++ если использовать библиотеки (boost, QT) можно написать кросс-платформенный код.
Есть компилятор написанный на C, не буду офишировать его название, конечно много пробелов, если надо могу скинуть в личку...
2 cheater_man есть Flex - генератор лексических анализаторов на С и есть bison - генератор синтаксических анализаторов на С. Есть теория и наклепать свой скриптовый язык + интерпретатор, зная теорию можно за вечер.
который у меня компилятор, написан с нуля. Кроме теории и знаний языка С там больше ничего не используется=)