Правильно ли я предполагаю, что какой-либо язык программирования может быть изменён программистом и тогда получиться разновидность этого языка и соответственно для него потребуется другой компилятор, так как старый компилятор не скомпилирует? Если да то в каких случаях язык изменяют и часто ли это происходит на практике, наверное появляется новая аппаратная или программная платформа и под неё затачивают какой-либо язык программирования и так получается разновидность языка и новый компилятор?