UPD Мне тут подсказали, что я соврал произношение, s/Ньюман/Нейман, сорри, все я править не буду, с-но, не так важно.
Согласно Фон-Ньюману, код ничем не отличается от данных. Машина считала кусок текста, а обработка его зависит от предыдущей инструкции, «как обработать этот кусок». Возможно, его надо сначала модифицировать, а потом вывести. А может быть — просто вывести. Если просто вывести — это и есть данные в чистом виде. Но данные это или нет, зависит не от самих данных, не от их формы или типа, а от исполнителя, от того, как он их будет интерпретировать. Думать о коде, как о чем-то изначально определенном (программа это или данные?) — означает уход от Фон-Ньюмановской модели, а еще это значит, что мы ставим телегу впереди лошади.
Кстати, возьмем проблему взаимных блокировок. Разве в чистой Фон-Ньюмановской модели это возможно? Обработка значения переменной, которая поступает на вход процессора, зависит от предыдущей фигни, которая обрабатывает эти данные. Возникает естественная очередь, никаких конфликтов.