Для любой программы, написанной на определенном языке программирования, всегда ли возможно компилировать программу эквивалентной функциональности на любом другом языке?Все языки программирования изоморфны?
ответ
С точки зрения сырьевой логики, да; пока оба языка являются Тьюрингом.
Однако, если ваш код использует API-интерфейсы, недоступные на целевом языке (например, сети, файловые системы, 3D-ускорение или потоки), тогда нет. (если вы не написали полную виртуальную машину на целевом языке и не строили поверх нее)
Например, нет никакого разумного способа переноса совместно используемого многопоточного кода в Javascript.
Вы ищете Turing-completeness.
Несмотря на то, что все языки с полным turing-технически имеют равную мощность, выражение идеи в одном может потребовать на порядок больше работы, чем в другой.
Кроме того, они могут предоставлять различные уровни доступа к базовой платформе в виде API-интерфейсов или тому подобного.
Которая аккуратно ведет к turing-tarpit, а это значит, что в одном из них может быть слишком много работы, чтобы сделать что-то в одном из них, в той степени, в которой первая написание интерпретатора для другого языка - это победа.
- 1. Языки программирования - разработка игр
- 2. Действительно многоязычные языки программирования?
- 3. Языки программирования SIMD
- 4. Языки программирования и скриптов
- 5. Языки автомобильного программирования
- 6. Языки программирования Hyper-Threading
- 7. Языки программирования для Windows
- 8. Языки программирования и доказательство концепций
- 9. Как языки программирования хранения массивов
- 10. Как работают языки визуального программирования?
- 11. хомская иерархия и языки программирования
- 12. Какие языки программирования требуют IDE?
- 13. Функциональные языки программирования блок-схем
- 14. Языки программирования для распределенной системы
- 15. Языки программирования и шаблоны проектирования
- 16. Основные страницы и языки программирования
- 17. Какие языки программирования поддерживают TestComplete?
- 18. Android/iPhone App программирования Языки
- 19. Функциональные и чистые языки программирования
- 20. Как сравнить разные языки программирования?
- 21. языки программирования Поддержка Microsoft MPI
- 22. Какие языки программирования являются регулярными?
- 23. Целевые множественные языки программирования/платформы
- 24. Какие языки программирования для GPU
- 25. Какие языки программирования трудно скрывать?
- 26. Мобильные операционные системы и языки (языки) программирования они написаны на
- 27. Являются ли функциональные языки программирования подходящими для графического программирования?
- 28. DSL (языки программирования доменов), реализованные с использованием разных языков GPL (языки программирования общего назначения)
- 29. Языки программирования, которые поддерживают XML-литералы
- 30. Как организовать Eclipse - Workspace VS Языки программирования