Vydání Brython 3.10, implementace jazyka Python pro webové prohlížeče

Byl vydán projekt Brython 3.10 (Browser Python) s realizací programovacího jazyka Python 3 pro provádění na straně webového prohlížeče, který umožňuje využít Python místo JavaScriptu pro vývoj skriptů pro web. Kód projektu je napsán v jazyce Python a je distribuován pod licencí BSD.

Připojením knihoven brython.js a brython_stdlib.js může webový vývojář používat jazyk Python k definování logiky fungování webu na straně klienta, čímž se Python stává alternativou k JavaScriptu. Pro zahrnutí kódu Python do stránek se používá tag s mime typem „text/python“. Je možné jak vložení kódu na stránku, tak i načítání externích skriptů (). Skript má plný přístup k prvkům a událostem DOM. Kromě přístupu ke standardní knihovně Python jsou nabízeny specializované knihovny pro interakci s DOM a JavaScriptovými knihovnami, jako jsou jQuery, D3, Highcharts a Raphael. Podporováno je použití CSS frameworků Bootstrap3, LESS a SASS.

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

Konečný výkon většiny operací ve vkládaných Python skriptech na webových stránkách se blíží výkonu CPython. Zpoždění vzniká pouze během kompilace, ale pro jeho odstranění je k dispozici možnost načtení předkompilovaného kódu do JavaScriptu, což se využívá k urychlení načítání standardní knihovny (Brython poskytuje nástroje pro vytváření JavaScript knihoven na základě Python modulů).

Nové vydání je významné zajištěním kompatibility s Python 3.10, včetně podpory operátorů pro porovnávání vzorů (match/case). V nové verzi je také navržena počáteční implementace abstraktního syntaktického stromu (AST, Abstract Syntax Tree) pro jazyk Python, který může být následně použit pro generaci kódu JavaScriptu z univerzálního AST.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster