Vydanie Brython 3.10, implementácie jazyka Python pre webové prehliadače

Predstavená verzia projektu Brython 3.10 (Browser Python) s implementáciou programovacieho jazyka Python 3 na vykonávanie na strane webového prehliadača, ktorá umožňuje používať Python namiesto JavaScriptu na vývoj skriptov pre web. Kód projektu je napísaný v jazyku Python a distribuuje sa pod licenciou BSD.

Pripojením knižníc brython.js a brython_stdlib.js môže webový vývojár používať jazyk Python na definovanie logiky fungovania stránky na strane klienta, pričom používa Python namiesto JavaScriptu. Pre zahrnutie Python kódu na stránky sa používa tag s mime-typom „text/python“. Povolené je ako vkladanie kódu na stránku, tak aj načítanie externých skriptov (). Z skriptu je poskytovaný plný prístup k prvkom a udalostiam DOM. Okrem prístupu k štandardnej knižnici Python sú k dispozícii špecializované knižnice na interakciu s DOM a JavaScriptovými knižnicami, ako sú jQuery, D3, Highcharts a Raphael. Podporuje sa aj používanie CSS rámcov Bootstrap3, LESS a SASS.

Spustenie Python kódu z blokov <script> производится через предварительную компиляцию этого кода, выполняемую обработчиком Brython после загрузки страницы. Компиляция инициируется при помощи вызова функции brython(), например через добавление «<body onload="»brython()»">». На основе Python-кода формируется представление на языке JavaScript, которое затем выполняется штатным JavaScript-движком браузера (для сравнения, проект PyPy.js предлагает для выполнения Python-кода в браузере скомпилированный в asm.js интерпретатор CPython, а Skulpt реализует интерпретатор на JavaScript).

Konečný výkon väčšiny operácií vo webových Python skriptoch je blízky výkonu CPython. Zdržanie sa objavuje iba v štádiu kompilácie, avšak pre jej odstránenie je poskytovaná možnosť načítania predkompilovaného JavaScript kódu, ktorá sa používa na zrýchlenie načítania štandardnej knižnice (Brython poskytuje nástroje na vytváranie JavaScript knižníc na základe modulov Python).

Nové vydanie je pozoruhodné zabezpečením súladu s Python 3.10, vrátane podpory operátorov na porovnávanie so vzorom (match/case). V novej verzii je taktiež navrhnutá počiatočná implementácia abstraktného syntaktického stromu (AST, Abstract Syntax Tree) pre jazyk Python, ktorý môže byť neskôr použitý na generovanie JavaScript kódu z univerzálneho AST.

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster