Python for Devs
Ссылка
нажмите — покажем
нажмите — покажем
В новой статье разбираем попытку превратить Python в формат распространения уровня «один бинарник»
Идея простая: вместо Docker-образов с интерпретатором и зависимостями компилировать обычные Python-функции в кроссплатформенные исполняемые файлы, которые запускаются вообще без Python.
Работает это следующим образом: Python-код разбирают в AST, строят промежуточное представление, затем "понижают" его до C++ и компилируют под нужную платформу — от серверов до мобилок и WebAssembly.
Интересная часть — оптимизация. Из одной Python-функции генерируют сразу много эквивалентных C++-программ с разными библиотеками, алгоритмами и ускорителями. Все варианты тестируются на реальном железе, собирается телеметрия, и дальше система эмпирически выбирает самый быстрый путь.
LLM используют утилитарно: для генерации и поддержки большого количества C++-операторов под разные библиотеки.
Для пользователя всё сводится к декоратору @compile и CLI.
14 · 2K ·