4 रिपॉजिटरी
The design and implementation of the initial stages of a compiler, including parsing and IR generation.
Distinct from Compiler Development: None of the candidates correctly capture the broad architectural domain of compiler frontend engineering.
Explore 4 awesome GitHub repositories matching programming languages & runtimes · Compiler Frontend Development. Refine with filters or upvote what's useful.
go-ast-book एब्स्ट्रैक्ट सिंटैक्स ट्री (AST) विश्लेषण, कंपाइलर डेवलपमेंट और स्टेटिक कोड वेरिफिकेशन पर केंद्रित शैक्षिक और तकनीकी संसाधनों का एक संग्रह है। यह Go सोर्स कोड को पार्स करने, ट्रैवर्स करने और उसका विश्लेषण करके अर्थ निकालने के लिए गाइड और मैनुअल प्रदान करता है। यह प्रोजेक्ट कंपाइलर फ्रंटएंड बनाने के लिए एक संदर्भ के रूप में कार्य करता है, जो हाई-लेवल कोड को इंटरमीडिएट रिप्रेजेंटेशन और सिंगल स्टेटिक असाइनमेंट फ़ॉर्म में अनुवाद करने को कवर करता है। यह भाषा टूलिंग विकसित करने और स्टेटिक कोड विश्लेषण करने के लिए इन तकनीकों का उपयोग करने के निर्देश भी प्रदान करता है। संसाधन लेक्सिकल टोकनाइज़ेशन, एक्सप्रेशन्स और डिक्लेरेशन्स की स्ट्रक्चरल पार्सिंग और सोर्स फ़ाइलों के लिए कोऑर्डिनेट ट्रैकिंग सहित स्टेटिक विश्लेषण क्षमताओं की एक विस्तृत श्रृंखला को कवर करते हैं। यह आइडेंटिफ़ायर रिज़ॉल्यूशन, टाइप करेक्टनेस वेरिफिकेशन और कॉनकरेंसी और डिफ़र्ड एक्ज़ीक्यूशन के लिए कंट्रोल फ़्लो विश्लेषण जैसी सिमेंटिक विश्लेषण प्रक्रियाओं का भी विवरण देता है।
Provides a comprehensive reference for building compiler frontends, from parsing to intermediate representation generation.
LLVM is a modular compiler infrastructure and framework consisting of a collection of reusable libraries used to build language front-ends and optimization tools. It functions as a low-level virtual machine that provides an intermediate representation and optimization pipeline to enable language-agnostic code generation. The project provides a toolkit for just-in-time compilation, translating intermediate representations into machine code at runtime for immediate execution. Its modular design allows developers to create custom language front-ends and high-performance runtime environments acro
Facilitates the design and implementation of the initial compiler stages, including parsing and IR generation.
Jison एक JavaScript पार्सर जनरेटर है जो LALR पार्सिंग एल्गोरिदम को लागू करता है। यह संरचित इनपुट को टोकन और ट्री में बदलकर कस्टम प्रोग्रामिंग भाषाओं का विश्लेषण करने के लिए उपकरण बनाता है। यह प्रोजेक्ट एक Bison-संगत जनरेटर के रूप में कार्य करता है, जो JavaScript पार्सर बनाने के लिए Bison पार्सर जनरेटर के साथ संगत प्रारूप में व्याकरण स्वीकार करता है। यह कंपाइलर फ्रंटएंड विकास की आवश्यकताओं को कवर करता है, जिसमें डोमेन-विशिष्ट भाषाओं का कार्यान्वयन और सिंटैक्स विश्लेषण टूलिंग शामिल है। इसकी क्षमताएं कस्टम भाषा पार्सिंग और कमांड लाइन इंटरफ़ेस के माध्यम से पार्सर के निर्माण तक फैली हुई हैं।
Provides the essential tools for the initial stage of a compiler, focusing on parsing and analysis.
Participle is a Go parser generator and toolkit for building language frontends. It provides a declarative grammar framework that uses reflection and struct tags to map input patterns directly into typed data structures. The library features a stateful lexical analyzer that employs state machines to handle nested or modal patterns. It includes a lexer code generator to produce optimized code, reducing runtime memory allocations and increasing throughput. The project covers recursive descent parsing with support for union types via sealed interfaces and custom parsing logic through interface-
Provides the fundamental tools for building compiler frontends, including lexical analysis and syntax tree generation.