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