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

Поскольку компилятору, кроме интерпретатора, нужно только переводить ввод и не запускать его, производительность сама по себе должна быть не такой проблемной, как с интерпретатором. Следовательно, вы не будете писать интерпретатор, скажем, Ruby или PHP, потому что он будет слишком медленным.

Однако как насчет компиляторов?

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

Чтобы быть уверенным: под языком сценариев я подразумеваю интерпретируемые языки, имеющие типичные функции, которые делают программирование быстрее, проще и приятнее для программиста, обычно, по крайней мере. Примеры: PHP, Ruby, Python, возможно JavaScript, хотя это может быть странным выбором для компилятора

На чем обычно пишут компиляторы? Как я полагаю, вы ответите чем-то более низким, например, C, C ++ или даже Assembler, почему?

Есть ли компиляторы, написанные на языках сценариев?

Каковы (не) преимущества использования языков программирования низкого или высокого уровня для написания компилятора?