Являются ли все языки программирования следствием архитектуры процессора?
===========================================================================

 Если придумать принципиально другую архитектуру процессора, чем Intel/AMD, то приведет ли это к тому, что языки программирования станут тоже принципиально другими? Или ЯП имеют слабую связь / вообще не имеют связь с архитектурой процессора? 

 Пара встречных вопросов:  

1. что считать **принципиально** другой архитектурой? кроме упомянутых вами Intel/AMD, есть еще такие штуки как arm/mips, arc, itanium - все они в той или иной степени отличаются друг от друга.  
  

2. следствием какой архитектуры, по вашему мнению, являются языки вроде haskell или prolog? А, например, всякие DSL - тоже ведь языки программирования, просто узко специализированные.  
  

Я не думаю, что языки программирования вообще не имею связь с процессором (как минимум компилятор/интерпретатор должен исполняться на процессоре), но, мне кажется, что ответить на ваш вопрос просто нельзя, пока нет четкого осознания, что такое "другая архитектура". С другой стороны языки являются отражением той или иной модели вычислений, если предложить новую модель, то для описания вычислений в такой модели понадобится новый язык, но будет ли он **принципиально** другим, и понадобится для него принципиально другой процессор не понятно (как пример, императивные языки vs декларативные, и те и те исполняются на одних процессорах). 

 Да, конечно. Для нового типа процессора придумали новый язык программирования Corelet.  

[https://dl.dropboxusercontent.com/u/91714474/Paper...](https://dl.dropboxusercontent.com/u/91714474/Papers/020.IJCNN2013.Corelet.pdf) 

 Изменение архитектуры процессора приведет к изменению только языков так сказать ассемблерного типа. Так как языки создавались с целью облегчения написания программ, в них старались заложить абстрактные концепции, которые позволили бы программистам работать с "виртуальной машиной" (абстрактной машиной в которой нет ограничений на память, время процессора и т.д. -- данное определение я воспроизвел по памяти и оно может быть ошибочным :-) ). Проще говоря есть так называемые ЯВУ -- Языки Высокого Уровня. Они как бы аппаратно независимы и позволяют писать кросплатформенный код (например Си). Т.к. за трансляцию кода ЯВУ в машинный код отвечают виртуальные машины, интерпретаторы и компиляторы именно они бы претерпели серьезные изменения в случае смены архитектуры.  

P.S. Сами языки в случае смены архитектуры изменятся лишь самую малость (в основном библиотеки для работы с вводом/выводом и тому подобные). 

 Есть такой термин, "[семантический разрыв](http://dims.karelia.ru/x86/l1.shtml)".