Доступен релиз проекта Brython 3.14.1 (Browser Python) с реализацией языка программирования Python 3 для web-браузеров, позволяющей использовать Python вместо JavaScript для разработки скриптов для Web. Код проекта написан на языке Python и распространяется под лицензией BSD.
Підключивши бібліотеки brython.js та brython_stdlib.js, web-розробник може використовувати мову Python для визначення логіки роботи сайту на стороні клієнта, використовуючи Python замість JavaScript. Для включення Python-коду на сторінки використовується тег с mime-типом «text/python». Допускается как встраивание кода на страницу, так и загрузка внешних скриптов (). Из скрипта предоставляется полный доступ к элементам и событиям DOM. Помимо доступа к стандартной библиотеке Python предлагаются специализированные библиотеки для взаимодействия с DOM и JavaScript-библиотеками, такими как jQuery, D3, Highcharts и Raphael. Поддерживается использование CSS-фреймворков Bootstrap3, LESS и SASS.
Виконання Python-коду з блоків производится через предварительную компиляцию этого кода, выполняемую обработчиком Brython после загрузки страницы. Компиляция инициируется при помощи вызова функции brython(), например через добавление «». На основе Python-кода формируется представление на языке JavaScript, которое затем выполняется штатным JavaScript-движком браузера (для сравнения, проект PyPy.js предлагает для выполнения Python-кода в браузере скомпилированный в asm.js интерпретатор CPython, а Skulpt реализует интерпретатор на JavaScript).
Підсумкова продуктивність більшості операцій у Python-сценарах, що вбудовуються в web-сторінки, близька до продуктивності CPython. Затримка виникає лише на етапі компіляції, але для її усунення надається можливість завантаження заздалегідь скомпілованого в JavaScript коду, яка застосовується для прискорення завантаження стандартної бібліотеки (Brython надає інструментарій для створення JavaScript-бібліотек на основі модулів Python).
Новый выпуск примечателен полной переработкой реализации встроенных типов и переписыванием кода для разбора аргументов встроенных функций и методов. В ветке Brython 3.14 обеспечена совместимости с CPython 3.14 и реализована большая часть новых возможностей данного выпуска, включая поддержку t-строк и отложенной обработки аннотаций.
Джерело: opennet.ru
