На чем написан язык Си? (НЕ c++)
Язык программирования Си ни на чём не может быть написан. Он состоит из текстовых лексем. Он компилируется в программу на ассемблере. Его компиляторы обычно написаны на Си.
на ассемблере
на тетради
Язык – это набор правил. Другими словами, язык – это его описание. Оно записано на обычном естественном языке. И частично может быть описано на формальном языке (например, форма Бэкуса – Наура)
На языке программирования пишут программу – компилятор или интерпретатор языка. У одного языка может быть несколько компиляторов, интерпретаторов и других инструментов. Часто стараются написать компилятор на том же языке, который он компилирует https://ru.wikipedia.org/wiki/Раскрутка_компилятора
Понятно, что самый первый компилятор языка Си не было смысла писать на Си. Но современные компиляторы Си написаны на Си. Ещё там могут использоваться инструменты типа lex и yacc https://ru.wikipedia.org/wiki/Yacc
на клавиатуре xD