ब्रायथन 3.10 का विमोचन, वेब ब्राउज़रों के लिए पायथन भाषा का कार्यान्वयन

ब्रायथन 3.10 (ब्राउज़र पायथन) प्रोजेक्ट की एक रिलीज़ को वेब ब्राउज़र पक्ष पर निष्पादन के लिए पायथन 3 प्रोग्रामिंग भाषा के कार्यान्वयन के साथ प्रस्तुत किया गया है, जो वेब के लिए स्क्रिप्ट विकसित करने के लिए जावास्क्रिप्ट के बजाय पायथन के उपयोग की अनुमति देता है। प्रोजेक्ट कोड पायथन में लिखा गया है और बीएसडी लाइसेंस के तहत वितरित किया गया है।

Brython.js और brython_stdlib.js लाइब्रेरी को शामिल करके, एक वेब डेवलपर क्लाइंट साइड पर साइट के तर्क को परिभाषित करने के लिए जावास्क्रिप्ट के बजाय पायथन का उपयोग करके पायथन भाषा का उपयोग कर सकता है। पेजों पर पायथन कोड शामिल करने के लिए, टैग का उपयोग करें с mime-типом «text/python». Допускается как встраивание кода на страницу, так и загрузка внешних скриптов (). Из скрипта предоставляется полный доступ к элементам и событиям DOM. Помимо доступа к стандартной библиотеке Python предлагаются специализированные библиотеки для взаимодействия с DOM и JavaScript-библиотеками, такими как jQuery, D3, Highcharts и Raphael. Поддерживается использование CSS-фреймворков Bootstrap3, LESS и SASS.

ब्लॉक से पायथन कोड निष्पादित करना производится через предварительную компиляцию этого кода, выполняемую обработчиком Brython после загрузки страницы. Компиляция инициируется при помощи вызова функции brython(), например через добавление «». На основе Python-кода формируется представление на языке JavaScript, которое затем выполняется штатным JavaScript-движком браузера (для сравнения, проект PyPy.js предлагает для выполнения Python-кода в браузере скомпилированный в asm.js интерпретатор CPython, а Skulpt реализует интерпретатор на JavaScript).

वेब पेजों में एम्बेडेड पायथन स्क्रिप्ट के अधिकांश ऑपरेशनों का अंतिम प्रदर्शन सीपीथॉन के प्रदर्शन के करीब है। देरी केवल संकलन चरण में होती है, लेकिन इसे खत्म करने के लिए, पूर्व-संकलित जावास्क्रिप्ट कोड को लोड करने की क्षमता प्रदान की जाती है, जिसका उपयोग मानक लाइब्रेरी की लोडिंग को तेज करने के लिए किया जाता है (ब्रायथन पायथन मॉड्यूल के आधार पर जावास्क्रिप्ट लाइब्रेरी बनाने के लिए उपकरण प्रदान करता है) ).

नई रिलीज़ में पैटर्न मिलान (मैच/केस) ऑपरेटरों के लिए समर्थन सहित पायथन 3.10 के साथ संगतता की सुविधा है। नया संस्करण पायथन भाषा के लिए एक अमूर्त सिंटैक्स ट्री (एएसटी, एब्सट्रैक्ट सिंटैक्स ट्री) का प्रारंभिक कार्यान्वयन भी प्रदान करता है, जिसका उपयोग बाद में सार्वभौमिक एएसटी से जावास्क्रिप्ट कोड उत्पन्न करने के लिए किया जा सकता है।

स्रोत: opennet.ru

एक टिप्पणी जोड़ें