Мне просто интересно, но я бы хотел знать, можно ли реализовать python в сборке, и если не так, то почему это не было сделано, чтобы помочь в решении проблем скорости. простите мою наивность в вопросах языков программирования.python, реализованный в сборке
ответ
Основная реализация написана на C, и это скомпилировано в машинный код (то есть сборка, доступная для ЦП). Таким образом, сборка сборки, безусловно, возможна, и если это возможно для компилятора, это возможно для людей - теоретически. На практике это даже не очень практично. Не только asm является еще более низким уровнем, чем C (увеличение времени разработки значительно, возможно, даже экспоненциально до размера проекта), это также очень специфично для платформы, поэтому каждый порт выполняет огромную работу (а поддержка умножается на число поддерживаемых платформ - немало в случае CPython).
Кроме того, очень сомнительно, если бы это дало заметный бонус скорости. Написание его ближе к металлу не приводит к тому, что материал ускоряется магически (возможно, это может быть наоборот), вам будет трудно найти программиста, который может последовательно писать лучшую сборку, чем четыре или пять известных компиляторов C) , И большая часть медленности Python исходит из множества абстракций и указаний, на которых состоит язык, а не от небрежной реализации этих.
Более перспективный подход (который действительно сопровождается несколькими альтернативными реализациями) - это умный Just In Time-Compiler (JIT), который сохраняет всю динамичность, но использует тот факт, что большинство программ Python мало используют эту динамику распознавая наиболее распространенные пути во время выполнения и оптимизируя их. Такие сложные программы снова не записываются в asm.
Многие люди называют C «Portable Assembly Language». –
Исходный код - это не волшебная операция «сделай шаг вперед». Семантика языка действительно диктует совсем немного о том, насколько быстро (или нет) язык. (Например, erlang, скомпилированный в собственный код через Hipe, все еще довольно медленный).
- 1. Синтаксис синтаксиса портативного синтаксиса, реализованный в Python
- 2. язык программирования, реализованный в чистом python
- 3. Etherpad как проект, реализованный в python
- 4. Как запустить COM-сервер, реализованный в python?
- 5. A *, реализованный в C
- 6. УстановленFixedCHAR(), реализованный в JOOQ
- 7. str_pad, реализованный в Java
- 8. Бесконечный цикл в поиске с сжатием пути, реализованный в python
- 9. python: есть ли синтаксический анализатор XML, реализованный в качестве генератора?
- 10. Как добавить возможности трассировки/отладки на язык, реализованный в python?
- 11. Создать новую ссылку на реализованный класс в Python
- 12. Radix Sort, реализованный в C++
- 13. Протокол WADO, реализованный в node.js
- 14. Вывод типа, реализованный в C++
- 15. Класс, реализованный в нескольких местах
- 16. Руководство по сборке мусора в Python
- 17. Реализованный репозиторий двоичных файлов
- 18. AutoCompleteDecorate, реализованный на JComboBox
- 19. сортировать реализованный список ссылок
- 20. sofeware openflow, реализованный Java
- 21. Скорректированной Реализованный Волатильность
- 22. Семантика - Передача в реализованный интерфейс в методы
- 23. Могу ли я получить класс, частично реализованный в Swift, и частично реализованный в Objective C?
- 24. QuantLib 1.9 Неустранимая ошибка при сборке Python
- 25. Как выполняется mysql, реализованный внутри?
- 26. Как напечатать реализованный класс объекта
- 27. Реализованный индикатор выполнения Bootstrap onclick
- 28. Оператор преобразования, реализованный с static_cast
- 29. JenkinsAPI Python - Попытка получить информацию о сборке
- 30. Реализованный связанный список «thread-safe»
http://blog.stackoverflow.com/2011/01/real-questions-have-answers/ – SilentGhost
Этот вопрос неверен на многих уровнях ... с чего начать? никто больше не реализует сложное программное обеспечение на ассемблере - это просто невозможно. и для всех, кого вы знаете, части python/выполняются/встроены в встроенный ассемблер. также, какие проблемы скорости? кроме этого: да, это может быть реализовано в ассемблере (все может). – hop
преждевременная оптимизация - корень всего зла – Axarydax