LINUX.ORG.RU

История изменений

Исправление alysnix, (текущая версия) :

Для общего бэкенда годится Си++.

не годится. во первых он очень сложный. темплейты с++ уж точно лишнее. также фронтенд должен знать например размеры переменных и всякие там смещения. дабы генерить адреса и другие смещения. должен знать размеры типов.

то есть промежуточный язык должен с одной стороны получать уже рассчитанные фронтендом размеры типов и смещения, и с другой стороны быть достаточно информативным для стадии оптимизации, чтобы можно было делать более глубокую оптимизацию.

также промежуточному языку не нужна читаемость, а наоборот - нужна компакность, ибо он генерится машиной и читается ею. он может быть даже чисто бинарным нечитаемым кодом

Исправление alysnix, :

Для общего бэкенда годится Си++.

не годится. во первых он очень сложный. темплейты с++ уж точно лишнее. также фронтенд должен знать например размеры переменных и всякие там смещения. дабы генерить адреса и другие смещения. должен знать размеры типов.

то есть промежуточный язык должен с одной стороны получать уже рассчитанные фронтендом размеры типов и смещения, и с другой стороны быть достаточно информативным для стадии оптимизации, чтобы можно было делать более глубокую оптимизацию.

Исходная версия alysnix, :

Для общего бэкенда годится Си++.

не годится. во первых он очень сложный. темплейты с++ уж точно лишнее. также фронтенд должен знать например размеры переменных и всякие там смещения. дабы генерить адреса и другие смещения. должен знать размеры типов.

то есть промежуточный язык должен с одной стороны получать уже рассчитанные фронтенджом размеры типоы и смещения, и с другой стороны быть достаточно информативным для стадии оптимизации, чтобы можно было делать более глубокую оптимизацию.