sim3x, процессор исполняет программу-интерпретатор, а та в свою очередь исполняет команды интерпретируемого языка. Прямой трансляции в МК я здесь не наблюдаю.
MaxLich, но к деталям работы ЭВМ это не относится, это структуры данных, а какие в процессоре есть регистры и организацию памаяти на самом низком ур. программисту на Java знать не обязательно, но было бы полезно.
sim3x, да С++11 и те, что были после него и до него - это все разные ЯП, хоть и обратно совместимые. И Питон 1, 2, 3 и их версии разные языки. Хотя такие ЯП обычно называют диалектами.
Программы на интерпретируемых ЯП не обязательно транслируются в ЯМК, это могут быть просто команды интерпретатору, что нужно сделать.
sim3x, понятно что компилятор транслирует программу в ЯМК, но он на вход будет принимать программу уже на др. языке, а не на том, на котором был написан. Если в язык добавить даже одну фичу, которой не было изначально, то это будет уже др. язык. Как на BF вызывать ф-ции из DLL, не изменив при этом сам язык?
И программы не обязательно компилируются, они могут исполняться в интерпретаторе.
sim3x, нет на тьюринг-полном ЯП можно написать не все что угодно, а любую вычислимую функцию. И на BF невозможно написать оконную программу, потому что из способов взаимодействия с внешним миром только ввод символа с клавиатуры и вывод символа на экран.
На любом ЯП возможности программы будут ограничены возможностями языка и возможностями среды выполнения.
Учи теорию алкоритмов! ;-)
sim3x, тюринг-полный ЯП не значит что на нем можно написать что угодно, это значит что на нем можно написать любой алгоритм. Brainfuck тоже тьюринг-полный, но на нем не напишешь оконного приложения, потому что нет соответствующих возможностей языка.
Денис Триел, да вы правильно поняли, для обучения лучше писать в Python Shell, он сразу выполняет выражение и выдает результат. А в файл можно записать несколько строк, сохранить и запустить. Я сам когда начал изучать Python писал в основном в Shell, а когда программы стали размером больше 2-3 строчек стал писать в файлы.
Что тут непонятного? В файле нужно сохранить только:
print("Game Over")
input("\n\n Нажмите энтер для завершения.")
Все остальное в файле не нужно, это все пишет сам Python в интерактивном режиме, включая >>> - это приглашение к вводу команд.
Попробуйте сперва запустить Python Shell и вводить команды в нем, чтобы понять как все работает.