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

cx एक C-परिवार की हाइब्रिड लो-लेवल/हाई-लेवल प्रोग्रामिंग भाषा है जो रनटाइम प्रदर्शन और डेवलपर उत्पादकता पर केंद्रित है, इसी प्राथमिकता क्रम में। इसे सरल और अनओपिनियनेटेड बताया गया है, जो इम्पेरेटिव, जेनेरिक, डेटा-ओरिएंटेड, फंक्शनल और ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग शैलियों का समर्थन करती है। यह LLVM या C बैकएंड के माध्यम से नेटिव कोड में कंपाइल होती है, जिसमें कोई गार्बेज कलेक्शन या छिपा रनटाइम नहीं है। यह प्रोजेक्ट अपनी 0.1 रिलीज़ के करीब है। README में उल्लेख है कि कुछ नियोजित फीचर अभी लागू नहीं हुए हैं, लागू किए गए फीचर बदल सकते हैं, और बग मौजूद हैं। डॉक्युमेंटेशन प्रोजेक्ट वेबसाइट पर और docs के अंतर्गत Markdown रूप में उपलब्ध है, साथ में examples डायरेक्टरी में कोड सैंपल हैं। प्रश्न और चर्चाएँ GitHub issues या प्रोजेक्ट के Discord सर्वर पर निर्देशित की जाती हैं। सोर्स से बिल्ड करने के लिए C++20 कंपाइलर, CMake 3.16 या नया, और LLVM/Clang 23 आवश्यक है। README में Linux (apt-आधारित इंस्टॉल और पहले से बने LLVM tarball), macOS (Homebrew), और Windows (पहले से बने LLVM बाइनरी) के लिए प्लेटफ़ॉर्म-विशिष्ट निर्देश दिए गए हैं। बिल्ड से cx और cx-lsp बाइनरी बनती हैं। लैंग्वेज सर्वर LSP-सक्षम एडिटर में diagnostics, hover, go to definition, completions, find references, और semantic highlighting का समर्थन करता है। योगदान GitHub issues और एक Trello बोर्ड के माध्यम से स्वागत योग्य हैं। परीक्षण pip के जरिए इंस्टॉल किए गए lit और psutil का उपयोग करता है, फिर एक CMake check टारगेट CTest के जरिए पूरी सूट चलाता है, जिसमें lit/कंपाइलर परीक्षण, LLVM और C दोनों बैकएंड पर उदाहरण प्रोग्राम, डॉक्युमेंटेशन स्निपेट, और लैंग्वेज सर्वर एंड-टू-एंड परीक्षण शामिल हैं। ctest फ़िल्टर के साथ उपसमुच्चय चलाए जा सकते हैं। C++ कोड शैली ClangFormat द्वारा format और lint CMake टारगेट के माध्यम से लागू की जाती है। एक WebAssembly फ्रंटएंड और इन-ब्राउज़र C टूलचेन ब्राउज़र प्लेग्राउंड और वेबसाइट का समर्थन करते हैं, स्थानीय विकास के लिए एक बिल्ड स्क्रिप्ट के साथ। प्रोजेक्ट MIT लाइसेंस के अंतर्गत लाइसेंस प्राप्त है।