awesome-repositories.com
Blog
MCP
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetServeur MCPÀ proposNotre méthodologiePresse
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

45 dépôts

Awesome GitHub RepositoriesMetaprogramming & Macros

Tools and language features that execute code during compilation to generate types or optimize logic.

Distinguishing note: Focuses on compile-time code execution and reflection, distinct from general-purpose build tools.

Explore 45 awesome GitHub repositories matching programming languages & runtimes · Metaprogramming & Macros. Refine with filters or upvote what's useful.

Awesome Metaprogramming & Macros GitHub Repositories

Trouvez les meilleurs dépôts grâce à l'IA.Nous recherchons les dépôts les plus pertinents grâce à l'IA.
  • julialang/juliaAvatar de JuliaLang

    JuliaLang/julia

    48,856Voir sur GitHub↗

    Julia is a high-performance, dynamic programming language designed for scientific computing, data analysis, and complex mathematical modeling. It provides a specialized runtime environment that manages memory allocation and parallel processing, utilizing a just-in-time compiler to translate high-level source code into optimized machine instructions. This architecture allows the language to achieve execution speeds comparable to statically compiled languages while maintaining the flexibility of a dynamic scripting environment. The language is distinguished by its multiple dispatch system, whic

    Exposes internal code structures as data objects for dynamic inspection and modification.

    Juliahacktoberfesthpcjulia
    Voir sur GitHub↗48,856
  • ziglang/zigAvatar de ziglang

    ziglang/zig

    43,123Voir sur GitHub↗

    Zig is a general-purpose systems programming language designed for high-performance applications that require manual memory management and direct control over hardware resources. It prioritizes predictable execution by enforcing explicit control flow and requiring functions to accept explicit memory allocators, ensuring that all heap operations and logic paths remain visible to the developer. The language distinguishes itself through a powerful compile-time metaprogramming engine that allows for arbitrary code execution during the build process, enabling advanced reflection and the generation

    Executes arbitrary code during the build process to generate types, perform reflection, and optimize logic at compile time.

    Zigcompilerlanguagezig
    Voir sur GitHub↗43,123
  • huihut/interviewAvatar de huihut

    huihut/interview

    37,972Voir sur GitHub↗

    This project is a comprehensive technical knowledge base designed to support developers in mastering systems programming and preparing for technical assessments. It provides a structured collection of fundamental computer science concepts, mapping high-level language constructs to low-level hardware memory layouts, runtime object lifecycles, and system-level operations. The repository distinguishes itself through a hierarchical approach that bridges the gap between theoretical principles and practical implementation. It offers detailed guidance on C++ language mechanisms, standard library usa

    Compares macro definitions with constant declarations regarding type safety and memory usage.

    C++algorithmccpp
    Voir sur GitHub↗37,972
  • vlang/vAvatar de vlang

    vlang/v

    37,655Voir sur GitHub↗

    V is a statically typed, compiled programming language designed for high-performance systems development. It prioritizes memory safety and execution speed by enforcing strict type checking and immutable defaults, while generating native machine code for multiple hardware architectures. The language is built around an integrated toolchain that includes a compiler, package manager, formatter, and testing utilities within a single executable, facilitating rapid development cycles. What distinguishes V is its focus on developer productivity and interoperability. It provides a direct interface for

    Executes logic during the build phase to automate repetitive tasks like serialization and routing without requiring runtime reflection.

    Vcompilerlanguageprogramming-language
    Voir sur GitHub↗37,655
  • servo/servoAvatar de servo

    servo/servo

    37,170Voir sur GitHub↗

    Servo is a high-performance, memory-safe web rendering engine designed for cross-platform embedding. It provides a modular framework that allows developers to integrate web content rendering into native applications across desktop, mobile, and embedded systems. By enforcing strict process isolation and memory safety, the engine creates a secure execution environment for processing web content. The engine distinguishes itself through a task-based, parallelized architecture that decouples layout, style, and rendering processes to maximize responsiveness. It utilizes a hardware-abstracted graphi

    Generates DOM bindings and property logic from interface definitions to ensure memory safety.

    Rustbrowserrustservo
    Voir sur GitHub↗37,170
  • google/comprehensive-rustAvatar de google

    google/comprehensive-rust

    33,049Voir sur GitHub↗

    Comprehensive Rust is a structured educational curriculum designed to teach the Rust programming language, focusing on its core principles of memory safety, performance, and type correctness. The project provides a comprehensive learning path for software engineers, covering the language's ownership model, borrow checking, and compile-time validation mechanisms that eliminate common memory-related errors without the need for a garbage collector. The curriculum distinguishes itself by offering specialized modules that demonstrate how to apply these safety guarantees in diverse, high-performanc

    Expands source code at compile time to reduce boilerplate and enable complex abstractions.

    Rustandroidclassroomcourse
    Voir sur GitHub↗33,049
  • elixir-lang/elixirAvatar de elixir-lang

    elixir-lang/elixir

    26,543Voir sur GitHub↗

    Elixir is a functional, concurrent programming language designed for building scalable and maintainable applications. It operates on the Erlang virtual machine, leveraging a distributed, fault-tolerant runtime environment that manages lightweight processes to ensure system reliability. By utilizing an actor-model supervision strategy, the language enables the creation of high-concurrency backend systems that automatically recover from failures and maintain stability under heavy loads. The language distinguishes itself through a powerful metaprogramming environment that allows developers to ex

    A programming environment that offers powerful macro capabilities to extend language syntax and create domain-specific abstractions for complex tasks.

    Elixir
    Voir sur GitHub↗26,543
  • oi-wiki/oi-wikiAvatar de OI-wiki

    OI-wiki/OI-wiki

    26,176Voir sur GitHub↗

    This project is a comprehensive, community-maintained knowledge base and toolkit designed for competitive programming. It serves as a centralized repository for algorithmic theory, data structures, and mathematical techniques, providing a structured reference for informatics and collegiate programming competitions. The project distinguishes itself by integrating educational content with a robust suite of automation utilities. It provides a complete workflow for competitive programming, including tools for automated test case generation, solution verification, and direct interaction with onlin

    Provides preprocessor directives for text-based substitution and conditional compilation to simplify code.

    TypeScriptacm-icpcacm-icpc-handbookalgorithms
    Voir sur GitHub↗26,176
  • stretchr/testifyAvatar de stretchr

    stretchr/testify

    25,861Voir sur GitHub↗

    Testify is a comprehensive testing toolkit for Go that provides a suite of assertion libraries and mocking frameworks to validate code behavior. It enables developers to write automated tests by comparing actual results against expected outcomes, ensuring that functional requirements are met throughout the development process. The project distinguishes itself through its flexible failure propagation, which allows tests to either halt execution immediately upon a failed requirement or return boolean results for conditional logic. It includes deep-equality object comparison and JSON normalizati

    Uses runtime type information to extract and validate parameters passed to mocked methods.

    Goassertionsgogolang
    Voir sur GitHub↗25,861
  • crystal-lang/crystalAvatar de crystal-lang

    crystal-lang/crystal

    20,299Voir sur GitHub↗

    Crystal is a statically typed, compiled programming language designed for high performance and memory safety. It leverages an LLVM-based compiler to translate source code into optimized machine-executable binaries, while its type-inference-based static analysis enforces strict safety rules during the build process. The language distinguishes itself through a fiber-based concurrent runtime that manages lightweight execution units for asynchronous input and output without blocking the main process. It also features a powerful compile-time macro system that allows for the inspection and transfor

    Enables compile-time code generation and AST transformation through a macro-based metaprogramming system.

    Crystalcompilercrystalcrystal-language
    Voir sur GitHub↗20,299
  • katex/katexAvatar de KaTeX

    KaTeX/KaTeX

    20,177Voir sur GitHub↗

    KaTeX is a typesetting library and web math renderer that transforms TeX and LaTeX mathematical notation into high-quality HTML and CSS for web browsers. It functions as a math notation parser and LaTeX to HTML converter, capable of operating as both a client-side library and a server-side math renderer to generate static HTML expressions. The project supports a wide range of specialized mathematical rendering, including chemical equation rendering, Bra-ket notation for quantum mechanics, and mathematical logic typesetting. It provides comprehensive controls for structural layouts such as mat

    Resolves custom command shortcuts into full notation strings before the final rendering pass.

    TypeScriptjavascriptkatexlatex
    Voir sur GitHub↗20,177
  • nim-lang/nimAvatar de nim-lang

    nim-lang/Nim

    18,071Voir sur GitHub↗

    Nim is a statically typed, compiled systems programming language designed for high performance and cross-platform development. It translates high-level source code into C, C++, or JavaScript, allowing developers to produce efficient native binaries or web-compatible scripts from a single codebase. The language emphasizes a clean, indentation-based syntax that simplifies code hierarchy while maintaining the power of a full-featured systems language. What distinguishes Nim is its robust metaprogramming framework, which allows developers to inspect, modify, and generate code structures during th

    Features a robust macro system that allows developers to inspect, modify, and generate code structures during the compilation phase.

    Nimcompilerefficienthacktoberfest
    Voir sur GitHub↗18,071
  • federico-busato/modern-cpp-programmingAvatar de federico-busato

    federico-busato/Modern-CPP-Programming

    15,808Voir sur GitHub↗

    This project is a comprehensive educational resource and programming course covering C++ language semantics and features from C++03 through C++26. It provides structured tutorials and technical guides focused on modern C++ development. The material offers specialized instruction on template metaprogramming, including the use of type traits and compile-time computations. It features detailed guides on concurrency and parallelism for multi-core execution, as well as a reference for software design applying SOLID principles and RAII. Additionally, it covers build performance optimization to redu

    Covers the definition and use of macros that accept a variable number of arguments.

    HTMLc-plus-pluscode-qualitycompilers
    Voir sur GitHub↗15,808
  • microsoft/rusttrainingAvatar de microsoft

    microsoft/RustTraining

    14,636Voir sur GitHub↗

    This project is a structured Rust programming curriculum and systems programming course designed to take learners from beginner to expert levels. It provides a comprehensive set of training materials focused on mastering the core syntax, idioms, and technical foundations of the Rust language. The project features a specialized language transition framework that maps concepts from C++, managed languages, and dynamic typing to Rust idioms. This allows developers from different ecosystems to translate architectural patterns and memory models into idiomatic Rust. The training covers a broad rang

    Teaches the use of declarative and procedural macros for compile-time code generation.

    Rust
    Voir sur GitHub↗14,636
  • rstacruz/cheatsheetsAvatar de rstacruz

    rstacruz/cheatsheets

    14,429Voir sur GitHub↗

    This project is a comprehensive collection of web development reference guides and technical cheat sheets. It provides a curated set of markdown-based documentation designed to help developers quickly locate syntax patterns and API examples for common web technologies and programming languages. The repository serves as a specialized reference library covering several distinct technical domains. It includes extensive guides for CSS, focusing on selectors, Flexbox, Grid, and responsive layout properties, as well as a DevOps command reference for Docker, Kubernetes, AWS, Ansible, and general she

    Offers technical guides on using macros and attributes to perform compile-time code generation.

    SCSS
    Voir sur GitHub↗14,429
  • jbranchaud/tilAvatar de jbranchaud

    jbranchaud/til

    14,116Voir sur GitHub↗

    This project is a markdown knowledge base used to maintain a curated collection of concise technical notes and write-ups across various programming languages and tools. It serves as a searchable personal reference library for documenting technical discoveries and software development patterns. The system implements a learning in public workflow, transforming markdown-based content storage into a static site. It utilizes directory-based routing to map folder structures to URL paths and employs schema-driven type generation to ensure data consistency across the knowledge base. The codebase cov

    Allows inspecting the actual code generated by a macro before it is evaluated.

    Vim Script
    Voir sur GitHub↗14,116
  • dbt-labs/dbt-coreAvatar de dbt-labs

    dbt-labs/dbt-core

    13,051Voir sur GitHub↗

    dbt-core is a command-line framework for transforming data within a warehouse using modular SQL and version control. It functions as a data transformation engine that enables users to define data structures and business logic through declarative configuration files, which the system then compiles into executable code. By managing complex data dependencies through a directed acyclic graph, it ensures that transformation tasks execute in the correct order while maintaining a manifest-driven state to track lineage and execution history. The project distinguishes itself through an adapter-based d

    Allows redirecting calls to specific macros to custom implementations for project-specific behavior adjustments.

    Rustanalyticsbusiness-intelligencedata-modeling
    Voir sur GitHub↗13,051
  • rui314/chibiccAvatar de rui314

    rui314/chibicc

    11,694Voir sur GitHub↗

    Chibicc is a C11 compiler designed as a reference implementation for studying compiler construction. It translates C source code into machine-specific assembly instructions by utilizing a pipeline that includes lexical analysis, recursive descent parsing, and single-pass code generation. The project serves as an educational tool for understanding the internal architecture of compilers, from initial tokenization to the final emission of machine code. The compiler distinguishes itself through its self-hosting capability, which allows the software to compile its own source code into a functional

    Prevents infinite recursion during macro expansion using hidesets to ensure predictable processing.

    C
    Voir sur GitHub↗11,694
  • kanaka/malAvatar de kanaka

    kanaka/mal

    10,665Voir sur GitHub↗

    This project is a Lisp interpreter implementation guide and framework designed to teach the core principles of programming language design. It provides a structured, step-by-step technical framework for building a functional Lisp language from scratch, featuring a specialized interpreter engine and an S-expression parser that converts syntax into abstract syntax trees. The project emphasizes a code-as-data metaprogramming framework, enabling the implementation of macros, quoting, and quasiquoting to transform expressions during evaluation. It is designed with host language agnosticism, allowi

    Implements a macro expansion system that transforms unevaluated code into new expressions.

    Assemblybashcc-plus-plus
    Voir sur GitHub↗10,665
  • leanprover/lean4Avatar de leanprover

    leanprover/lean4

    8,306Voir sur GitHub↗

    Lean 4 is a functional programming language and interactive proof assistant used to formalize mathematics and verify software correctness. It functions as a dependent type theorem prover and a formal verification tool that allows users to construct mathematical proofs and ensure program correctness. Additionally, it serves as a logic-based source for generating verified datasets used to train and benchmark artificial intelligence reasoning systems. The system distinguishes itself through a small-kernel verification model, where all proofs are verified by a trusted core of basic logical rules.

    Allows the definition of custom grammar rules to embed domain-specific languages directly into the core parser.

    Leanleanlean4
    Voir sur GitHub↗8,306
Préc.123Suivant
  1. Home
  2. Programming Languages & Runtimes
  3. Language Features and Paradigms
  4. Metaprogramming & Macros

Explorer les sous-tags

  • Custom Macro Definitions10 sous-tagsCreating reusable code blocks using patterns and repetition for automated syntax generation. **Distinct from Metaprogramming & Macros:** Focuses on the act of defining a new macro, whereas Metaprogramming & Macros is the broader category of compile-time execution.
  • Deferred Macro EvaluationsExecution of macros during compilation using delayed evaluation and trailing blocks to generate code. **Distinct from Metaprogramming & Macros:** Distinct from Metaprogramming & Macros as it focuses specifically on the execution mechanism of deferred evaluation and trailing blocks.
  • Hygienic Macro Systems4 sous-tagsMechanisms that ensure macro expansions do not conflict with existing identifiers in the surrounding scope. **Distinct from Metaprogramming & Macros:** Distinct from Metaprogramming & Macros: focuses specifically on the hygiene and variable scoping aspect of macro expansion.
  • Macro Argument Specification4 sous-tagsDefining the types of tokens a macro accepts to match identifiers, expressions, and literals. **Distinct from Metaprogramming & Macros:** Specifically covers the definition of arguments, whereas Metaprogramming & Macros is the general toolset.
  • Macro Execution Coverage AnalysisReports on which parts of compile-time macro code were executed during the build process to identify untested logic. **Distinct from Metaprogramming & Macros:** Distinct from general metaprogramming: focuses on diagnostic coverage reporting for macro logic rather than the execution itself.
  • Macro Overloading1 sous-tagDefining multiple input patterns for a single macro to trigger different logic based on the argument template. **Distinct from Metaprogramming & Macros:** Focuses on argument pattern matching and overloading, distinct from general metaprogramming macros.
  • Variadic MacrosMacros that accept an arbitrary number of arguments by recursively decomposing input patterns. **Distinct from Metaprogramming & Macros:** Focuses on the variadic nature of macro arguments specifically, rather than general metaprogramming.