इस प्रोजेक्ट के बारे में

Edge Python Python के एक सबसेट के लिए एक सैंडबॉक्स्ड रनटाइम है, जो सिंगल-पास SSA बाइटकोड कंपाइलर को थ्रेडेड-कोड स्टैक वर्चुअल मशीन के साथ जोड़ता है। कार्यान्वयन में NaN-बॉक्स्ड मान, इनलाइन कैशिंग, सुपर-इंस्ट्रक्शन फ्यूजन, शुद्ध-फ़ंक्शन मेमोइज़ेशन, एक मार्क-स्वीप गार्बेज कलेक्टर, पूर्ण इंटरप्रेटर स्नैपशॉट, और कवरेज-गाइडेड फज़िंग शामिल हैं। भाषा क्लासेस, async/await, पैटर्न मैचिंग, और इम्पोर्ट्स का समर्थन करती है जो कंपाइल समय पर हल किए जाते हैं। प्रोग्राम डिफ़ॉल्ट रूप से सैंडबॉक्स में काम करते हैं और केवल फ़ाइलों, नेटवर्क, या पर्यावरण तक पहुंच सकते हैं यदि `edge.json` मॉड्यूल कॉन्फ़िगरेशन के माध्यम से स्पष्ट रूप से घोषित किया गया हो। तैनाती लक्ष्यों में शामिल हैं: - `<edge-python>` कस्टम एलिमेंट के माध्यम से WebAssembly मॉड्यूल के रूप में ब्राउज़र निष्पादन - macOS, Linux, या WSL पर स्थापित `edge` बाइनरी के माध्यम से CLI निष्पादन - `edge build` द्वारा उत्पादित स्टैंडअलोन संकलित बाइनरी - `edge actor` द्वारा प्रबंधित सहकारी एक्टरों का पूल रिपॉजिटरी कई घटकों में व्यवस्थित है: रूट क्रेट में इंजन, लेक्सर, पार्सर, VM, और WebAssembly एक्सपोर्ट्स शामिल हैं; `cli/` निर्देशिका `edge` बाइनरी प्रदान करती है जो JavaScript मॉड्यूल के लिए StarlingMonkey के साथ wasmtime के तहत `compiler.wasm` चलाती है; `std/` मानक पैकेज रखता है; `pdk/` और `abi/` `.wasm` प्लगइन्स लिखने के लिए किट प्रदान करते हैं; `lang/` इंजन पर कस्टम स्क्रिप्टिंग भाषाएं बनाने का प्रदर्शन करता है; और `fuzz/` में फज़र होता है। दस्तावेज़ीकरण, क्विक स्टार्ट गाइड, CLI संदर्भ, मॉड्यूल सूची, एक्टर पैटर्न, और एम्बेडिंग निर्देश edgepython.com/docs पर उपलब्ध हैं।