इस प्रोजेक्ट के बारे में
Zen C एक आधुनिक सिस्टम प्रोग्रामिंग भाषा है जिसका कंपाइलर कस्टम बाइटकोड या रनटाइम के बजाय मानव-पठनीय GNU C/C11 उत्पन्न करता है। इसका कथित लक्ष्य उच्च-स्तरीय एर्गोनॉमिक्स को C की प्रदर्शन और अंतर-संचालन क्षमता के साथ जोड़ना है, और यह पूर्ण C ABI संगतता बनाए रखता है ताकि उत्पन्न कोड मौजूदा C लाइब्रेरीज़ से लिंक हो सके।
README में वर्णित भाषा सुविधाओं में टाइप इंफेरेंस, पैटर्न मैचिंग, जेनेरिक्स, ट्रेट्स, async/await, और RAII-शैली सुविधाओं के साथ मैनुअल मेमोरी प्रबंधन शामिल हैं। कंपाइलर C में लिखा गया है और make के साथ बनाया गया है; एक Windows बैच स्क्रिप्ट और Cosmopolitan Libc के माध्यम से एक पोर्टेबल "Actually Portable Executable" बिल्ड भी प्रलेखित है, जो x86_64 और aarch64 पर Linux, macOS, Windows और कई BSDs पर चलने के लिए एक एकल बाइनरी उत्पन्न करता है।
टूलिंग में एक कमांड-लाइन कंपाइलर (zc) शामिल है जिसमें run, build और transpile उप-कमांड हैं, एक REPL (zc-repl) जो LibTCC के माध्यम से इन-प्रोसेस JIT संकलन का उपयोग करता है, एक भाषा सर्वर (zc-lsp) जो go-to-definition, references, hover, completion, document symbols, signature help और diagnostics का समर्थन करता है, और एक दस्तावेज़ीकरण जनरेटर (zc-doc)। डिबगिंग LLDB या GDB जैसे मानक C डिबगर्स के साथ की जाती है, और VS Code, Vim/Neovim और Zed के लिए संपादक एकीकरण मौजूद हैं।
मानक लाइब्रेरी में संग्रह (Vec, Map, Set, Stack, Queue), UTF-8 समर्थन के साथ स्ट्रिंग्स, विकल्प और परिणाम प्रकार, फाइलसिस्टम, I/O, पथ, पर्यावरण, नेटवर्किंग (TCP, UDP, HTTP, DNS, URL), थ्रेड्स, समय, JSON, regex, SIMD प्रकार, मनमानी-परिशुद्धता पूर्णांक और फ्लोट्स, जटिल संख्याएं, प्रक्रिया प्रबंधन और CUDA सहायक शामिल हैं। एक अंतर्निहित यूनिट परीक्षण ढांचा नामित परीक्षण ब्लॉक, गैर-घातक अभिकथन, और विफल परीक्षणों की संख्या के बराबर एक निकास कोड प्रदान करता है।
आउटपुट बैकएंड C, C++, CUDA, Objective-C, JSON, AST डंप, Common Lisp और Graphviz को लक्षित कर सकते हैं, बैकएंड-विशिष्ट विकल्पों के साथ। कंपाइलर को सार्वजनिक हेडर के माध्यम से C लाइब्रेरी के रूप में भी एम्बेड किया जा सकता है। README GCC, Clang, Zig और TCC के खिलाफ परीक्षण-सूट परिणामों को नोट करता है, और संबद्धता के स्पष्ट अस्वीकरण के साथ MISRA C:2012 अनुपालन परीक्षण का उल्लेख करता है।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.