Языки программирования просто придумываются людьми. Потом программист пишет компилятор - программу перевода с придуманного языка на машинный, понятный процессору. А пишет программист этот компилятор с помощью одного из уже существующих языков программирования.
Изначально языки программирования проблеммно-ориентированы. Язык создается тогда, когда в рамках существующих языков описывать какие-либо объекты системы неудобно. А дальнейшая судьба языка разная. Одни языки обощаются и находят себе дальнейшее широкое примение по всему миру, а другие - так и остаются локальными в данной лаборатории и в конце концов погибвют Первые языки создавались вручную яйцеголовыми людьми в очках. По мере развития языков растет и нструментарий. В настоящее время языки создаются с помощью языков предыдущего уровня, причем есть даже пакеты для создания фрагментов новых языков
В компьютере имеется процессор, который определенным образом реагирует на сигналы в виде двоичных кодов. Это заложено в его электронной схеме. И любой язык должен на выходе подавать на процессор нужную последовательность кодов.
Пишут компиляторы/интерпетаторы/виртуальные машины для этих новых языков на старых языках. В итоге они все преобразуются в машинный код, который и понятен машине.