Izdaja Brython 3.11, implementacije jezika Python za spletne brskalnike

Predstavljena je bila izdaja projekta Brython 3.11 (Browser Python) z implementacijo programskega jezika Python 3 za izvajanje na strani spletnega brskalnika, kar omogoča uporabo Pythona namesto JavaScripta za razvoj skriptov za splet. Projektna koda je napisana v Pythonu in se distribuira pod licenco BSD.

Z vključitvijo knjižnic brython.js in brython_stdlib.js lahko spletni razvijalec uporabi jezik Python za definiranje logike spletnega mesta na strani odjemalca z uporabo Pythona namesto JavaScripta. Za vključitev kode Python na strani uporabite oznako с mime-типом «text/python». Допускается как встраивание кода на страницу, так и загрузка внешних скриптов (). Из скрипта предоставляется полный доступ к элементам и событиям DOM. Помимо доступа к стандартной библиотеке Python предлагаются специализированные библиотеки для взаимодействия с DOM и JavaScript-библиотеками, такими как jQuery, D3, Highcharts и Raphael. Поддерживается использование CSS-фреймворков Bootstrap3, LESS и SASS.

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

Končna zmogljivost večine operacij v skriptih Python, vdelanih v spletne strani, je blizu zmogljivosti CPython. Zakasnitev se pojavi samo v fazi prevajanja, a za njeno odpravo je na voljo možnost nalaganja vnaprej prevedene kode JavaScript, ki se uporablja za pospešitev nalaganja standardne knjižnice (Brython ponuja orodja za ustvarjanje knjižnic JavaScript na osnovi modulov Python ).

Nova izdaja je znana po zagotavljanju združljivosti s CPython 3.11 in izvajanju večine novih funkcij te veje, vključno s podporo za skupine izjem in izrazom »except*«, podrobnostmi o problematičnih izrazih v diagnostičnih sporočilih in pripenjanjem opomb k izjemam.

Vir: opennet.ru

Dodaj komentar