Lanzamento de Brython 3.11, implementacións da linguaxe Python para navegadores web

Presentouse unha versión do proxecto Brython 3.11 (Browser Python) cunha implementación da linguaxe de programación Python 3 para a súa execución no lado do navegador web, permitindo o uso de Python en lugar de JavaScript para desenvolver scripts para a Web. O código do proxecto está escrito en Python e distribúese baixo a licenza BSD.

Ao incluír as bibliotecas brython.js e brython_stdlib.js, un desenvolvedor web pode usar a linguaxe Python para definir a lóxica do sitio no lado do cliente, usando Python en lugar de JavaScript. Para incluír código Python nas páxinas, usa a etiqueta с mime-типом «text/python». Допускается как встраивание кода на страницу, так и загрузка внешних скриптов (). Из скрипта предоставляется полный доступ к элементам и событиям DOM. Помимо доступа к стандартной библиотеке Python предлагаются специализированные библиотеки для взаимодействия с DOM и JavaScript-библиотеками, такими как jQuery, D3, Highcharts и Raphael. Поддерживается использование CSS-фреймворков Bootstrap3, LESS и SASS.

Executar código Python desde bloques производится через предварительную компиляцию этого кода, выполняемую обработчиком Brython после загрузки страницы. Компиляция инициируется при помощи вызова функции brython(), например через добавление «». На основе Python-кода формируется представление на языке JavaScript, которое затем выполняется штатным JavaScript-движком браузера (для сравнения, проект PyPy.js предлагает для выполнения Python-кода в браузере скомпилированный в asm.js интерпретатор CPython, а Skulpt реализует интерпретатор на JavaScript).

O rendemento final da maioría das operacións en scripts de Python incorporados en páxinas web está próximo ao rendemento de CPython. O atraso prodúcese só na fase de compilación, pero para eliminalo, ofrécese a posibilidade de cargar código JavaScript precompilado, que se usa para acelerar a carga da biblioteca estándar (Brython proporciona ferramentas para crear bibliotecas JavaScript baseadas en módulos de Python). ).

A nova versión destaca por ofrecer compatibilidade con CPython 3.11 e implementar a maioría das novas funcións desta rama, incluíndo soporte para grupos de excepcións e a expresión "excepto*", detallando expresións problemáticas en mensaxes de diagnóstico e adxuntando notas ás excepcións.

Fonte: opennet.ru

Engadir un comentario