A apărut lansarea proiectului Brython 3.14.1 (Browser Python) cu implementarea limbajului de programare Python 3 pentru browsere web, care permite utilizarea Python în loc de JavaScript pentru dezvoltarea scripturilor pentru Web. Codul proiectului este scris în limbajul Python și este distribuit sub licența BSD.
Prin conectarea bibliotecilor brython.js și brython_stdlib.js, dezvoltatorul web poate utiliza limbajul Python pentru a defini logica de funcționare a site-ului pe partea clientului, aplicând Python în loc de JavaScript. Pentru a include codul Python pe pagini, se folosește eticheta cu tipul MIME „text/python”. Se permite atât încorporarea codului pe pagină, cât și încărcarea scripturilor externe (). Scriptul oferă acces complet la elementele și evenimentele DOM. În plus față de accesul la biblioteca standard Python, sunt oferite biblioteci specializate pentru interacțiunea cu DOM-ul și bibliotecile JavaScript, cum ar fi jQuery, D3, Highcharts și Raphael. Se susține utilizarea cadrelor CSS Bootstrap3, LESS și SASS.
Executarea codului Python din blocuri <script> производится через предварительную компиляцию этого кода, выполняемую обработчиком Brython после загрузки страницы. Компиляция инициируется при помощи вызова функции brython(), например через добавление «<body onload="»brython()»">». На основе Python-кода формируется представление на языке JavaScript, которое затем выполняется штатным JavaScript-движком браузера (для сравнения, проект PyPy.js предлагает для выполнения Python-кода в браузере скомпилированный в asm.js интерпретатор CPython, а Skulpt реализует интерпретатор на JavaScript).
Performanța finală a celor mai multe operații în scripturile Python încorporate în paginile web este aproape de performanța CPython. Întârzierea apare doar în etapa de compilare, însă pentru a o elimina se oferă posibilitatea de a încărca codul precompilat în JavaScript, care este folosit pentru a accelera încărcarea bibliotecii standard (Brython oferă un instrument pentru crearea bibliotecilor JavaScript bazate pe module Python).
Noua lansare este notabilă prin reimplementarea completă a tipurilor încorporate și rescrierea codului pentru analiza argumentelor funcțiilor și metodelor încorporate. În ramura Brython 3.14 s-a asigurat compatibilitatea cu CPython 3.14 și s-a implementat cea mai mare parte din noile caracteristici ale acestei versiuni, inclusiv suportul pentru t-string-uri și procesarea amânată a anotațiilor.
Sursa: opennet.ro
