Другие языки программирования и технологии

люди, почему компиляторы пишут не на си, а на c++ ?

Компиляторы по хорошему надо вообще писать в машинном коде, но извращенцы пишут на чём попало.
Василий Носков
Василий Носков
11 273
Лучший ответ
Александр Проскурин ассемблер во всех компилерах используется /
Данияр Букеев С чего баня повалилась? Компиляторы используют внутренние структуры данных, которые прекрасно описываются на языках высокого уровня.
Есть книжка про создание компиляторов, авторы Ахо, Ультан, Сати. Там процесс компиляции компилятора расписан подробно.
Данияр Букеев
Данияр Букеев
59 867
А почему бы и нет? На С++ можно сделать всё то, что можно сделать на С и еще немного сверху.
Александр Проскурин c++ из-за своих плюшек медленней си .
Власов Александр "Немного сверху" - это чего? Целый буклет диаграмм наследования?
с++ -объектно ориентированный а с - нет
АC
Андрей Celentani
20 058
Александр Проскурин это понятно, я отличия не спрашиваю
> c++ из-за своих плюшек медленней си .
Вы реально замеряли, сколько миллисекунд (а лучше наносекунд) занимает выполнение двух аналогичных алгоритмов на Си и С++?
Примеры можете привести (с реализациями на обоих языках - и разницей во времени)?
Или тупо вычитали откуда-то?

"Си всегда быстрее" (также как то же самое про ассемблер) - дурацкий стереотип от невежд, которые несут ничем не обоснованный бред.
Ну да, можно используя Си или ассемблер, повысить производительность отдельных кусков кода. Ну и что это за куски, может расскажете? И каково их применение в компиляторах?

> а писать компилятор на бейсике - это извращение /
Есличо, на свете десятки этих бейсиков, а не сотни. Вы все их знаете, что с такими опломбом заявляете, что прям ни один из них не подходит ни для каких компиляторов?

Вы вообще хоть какой компилятор написали за свою жизнь?
Александр Проскурин компилятор нет, транслятор да .
Александр Проскурин имеется в виду визуальный бейсик
Александр Проскурин сами посудите, почему если с++ не тормозит, то системы пишут в основном на си (плюс ассемблер, хотя это уже другая опера) , а и да подчеркиваю слово в основном, просто системы и на асме есть .
Не всегда С++ медленнее С. К сожалению, лень искать доказательства. Сам Страуструп говорил, что С++ не уступает С в производительности, при правильном использовании,

Но важнее не только производительность, но и скорость разработки, а также
связность и ясность кода. В С++ по моему скромному мнению с этим получше.

Впрочем, не Линус Торвальдс, может просто не умею С готовить ).
Сергей Жилин
Сергей Жилин
3 437
Александр Проскурин имеется в виду максимально оптимизированный код на двух языках