5 repository-uri
Modifications to the grammar and interpretation rules of an existing programming language.
Distinct from Python Extensions: Focuses on language syntax modification rather than developer tool plugins or library extensions.
Explore 5 awesome GitHub repositories matching programming languages & runtimes · Syntax Extensions. Refine with filters or upvote what's useful.
TrumpScript is a Python-based domain specific language and compiler extension that wraps the Python runtime to enforce custom grammar and vocabulary rules. It transforms a specialized, case-insensitive vocabulary and natural speech patterns into executable Python instructions. The implementation distinguishes itself through strict constraints on source code, including a variable name system that restricts identifiers to a predefined whitelist and a numeric parser that rejects any integer not exceeding one million. It further utilizes a token-filtering preprocessor to remove filler words and n
Modifies how Python code is written and interpreted through token filtering and case-insensitivity.
Scalaz is a functional programming library for Scala that provides a collection of purely functional data structures and type classes. It functions as a framework for organizing functional behaviors into hierarchies to enable generic programming and type-safe transformations. The library includes tools for composing and managing nested functional effects within a single type stack through a monad transformer system. It provides data structures for representing and combining input, output, and optionality effects. The project covers a broad surface of functional abstractions, including the im
Uses implicit extensions to provide fluent method call syntax on standard data structures.
Sweet-core este un compilator JavaScript source-to-source și un sistem de macro-uri în stil Lisp. Acesta funcționează ca un transformator de sintaxă care extinde JavaScript permițând definirea de sintaxă și operatori personalizați în timpul procesului de compilare. Sistemul oferă un framework pentru construirea de limbaje specifice unui domeniu (DSL) prin expansiune de macro-uri igienică și recursivă, precum și prin crearea de noi constructe de limbaj. Se distinge prin suportul pentru definirea de operatori personalizați cu asociativitate și precedență configurabile pentru a controla evaluarea expresiilor. Compilatorul include un sistem de module specializat pentru gestionarea dependențelor la compilare și integrarea helper-elor la runtime. Arhitectura sa internă acoperă transformarea arborelui sintactic abstract (AST), generarea de gramatici și generarea de obiecte sintactice pentru a asigura igiena lexicală. Este furnizată o interfață de linie de comandă pentru a transforma fișierele sursă în fișiere sau directoare JavaScript standard.
Creates identifiers, literals, keywords, and delimiters while maintaining lexical contexts to ensure code hygiene.
Janet is a Lisp-based dynamic programming language featuring a register-based bytecode virtual machine and an embeddable scripting engine. It functions as a fiber-based concurrency runtime and includes a parsing engine based on Parsing Expression Grammars. The project is distinguished by its ability to be integrated into C or C++ applications via a minimal header interface. It utilizes a Lisp-style macro system for compile-time code transformation and employs prototype-based table inheritance for object-oriented behavior. The runtime covers a broad set of capabilities, including asynchronous
Transforms code input into new output before compilation to create custom language constructs.
The project provides a standardized abstract syntax tree specification and utility library for parsing, transforming, and serializing markdown documents. It serves as a comprehensive document processing architecture that translates between raw text markup and structured node representations in both directions. The capability surface covers syntax parsing for extended markdown features, custom syntax extensions, metadata blocks, and embedded expressions, alongside document serialization that converts syntax trees back into standard and extended markup formats. It includes node modeling and val
Builds extensions that plug into parsers and serializers to support custom syntax nodes within documents.