awesome-repositories.com
Blog
awesome-repositories.com

Entdecke die besten Open-Source-Repositories mit KI-gestützter Suche.

EntdeckenKuratierte SuchenOpen-Source-AlternativenSelf-hosted SoftwareBlogSitemap
ProjektÜber unsRanking-MethodikPresseMCP-Server
RechtlichesDatenschutzAGB
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
grin-compiler avatar

grin-compiler/grin

0
View on GitHub↗
1,062 Stars·41 Forks·Haskell·4 Aufrufegrin-compiler.github.io↗

Grin

Grin is a compiler infrastructure designed for the translation and optimization of high-level functional languages. It functions as a graph-reduction compiler, transforming source code into a standardized intermediate representation that facilitates whole-program analysis and efficient execution across diverse hardware architectures.

The project distinguishes itself through a modular backend infrastructure that separates intermediate representation management from target-specific code generation. By utilizing graph-based transformations, the system performs advanced optimizations such as value propagation through conditional branches and the conversion of high-level semantics into explicit reduction steps, which minimizes memory overhead and redundant computations.

The compiler provides a comprehensive framework for inspecting and serializing program state at various stages of the compilation process. It supports a wide range of structural and whole-program optimizations, including dead code elimination and memory layout refinement, to produce optimized machine-readable code for desktop, mobile, and web platforms.

Features

  • Functional Programming Compilers - Provides a compiler infrastructure that translates high-level functional code into optimized intermediate representations for diverse hardware architectures.
  • Compiler Backends - Builds modular infrastructure to translate intermediate code into machine-readable formats for specific hardware targets.
  • Reduction Transformations - Implements lazy evaluation by converting functional semantics into explicit graph reduction steps to manage deferred computation.
  • Compiler Intermediate Representations - Uses a directed graph-based intermediate representation to enable complex whole-program analysis and optimization during compilation.
  • Graph Compilation - Applies graph-based transformations to functional code to eliminate redundant computations and improve memory layout.
  • Backend Infrastructure - Provides a modular backend infrastructure that separates intermediate representation management from target-specific code generation.
  • Binary Size Optimizations - Reduces binary size by removing dead code, unused type instances, and redundant external symbols.
  • Whole-Program Analysis - Performs whole-program analysis to eliminate redundant operations and reduce memory usage, resulting in faster execution times.
  • Serialization Frameworks - Provides a comprehensive framework for serializing and analyzing program state during compilation to facilitate performance tuning.
  • Runtime Code Optimizations - Optimizes runtime execution by removing redundant computations and refining memory layout.
  • Structural Simplification - Performs structural transformations on intermediate code to normalize common patterns and prepare the program for advanced optimization passes.
  • Branch Propagation - Optimizes case expressions by propagating values directly through branches to eliminate redundant data wrapping and reduce memory allocations.
  • Intermediate Representation Analysis - Provides tools for serializing and analyzing program state at various compilation stages to inspect internal logic.
  • Intermediate Representations - Generates standardized intermediate representations to enable back-end optimizations and translation for diverse hardware architectures.
  • Hardware Targeting - Supports multi-architecture targeting by adapting generated machine code for desktop, mobile, and web platforms.
  • Normalization - Provides structural normalization of functional code constructs into a standardized intermediate format to facilitate downstream compiler optimizations.
  • Propagation - Optimizes branching logic by propagating values directly through conditional expressions to reduce redundant data wrapping.
  • Graph Reduction - Applies graph reduction transformations to intermediate code structures to improve execution efficiency and decrease memory overhead.

Star-Verlauf

Star-Verlauf für grin-compiler/grinStar-Verlauf für grin-compiler/grin

KI-Suche

Entdecke weitere awesome Repositories

Beschreibe in einfachen Worten, was du brauchst — die KI bewertet tausende kuratierte Open-Source-Projekte nach Relevanz.

Start searching with AI

Kuratierte Suchen mit Grin

Handverlesene Sammlungen, in denen Grin vorkommt.
  • Entwicklung von Programmiersprachen und Interpretern
  • Programming language parser
  • Programmiersprachen

Open-Source-Alternativen zu Grin

Ähnliche Open-Source-Projekte, sortiert nach der Anzahl der gemeinsamen Funktionen mit Grin.
  • gcc-mirror/gccAvatar von gcc-mirror

    gcc-mirror/gcc

    11,019Auf GitHub ansehen↗

    This project is a multi-language compiler collection and cross-platform toolchain used to translate source code from various programming languages into optimized machine code for different hardware architectures. It provides a suite of tools including an optimizing compiler backend, a machine code generator, and a comprehensive runtime library suite that implements necessary execution environments and support functions. The system utilizes a multi-pass compilation pipeline and pluggable language front-ends to process source code into intermediate representations. It distinguishes itself throu

    C++
    Auf GitHub ansehen↗11,019
  • frege/fregeAvatar von Frege

    Frege/frege

    3,700Auf GitHub ansehen↗

    Frege is a purely functional programming language that compiles to JVM bytecode, providing Haskell-like semantics for the Java platform. It is built around a Haskell-inspired compiler that implements non-strict evaluation and a static type inference system to ensure data immutability and prevent side effects. The project distinguishes itself through a sophisticated type system featuring rank polymorphism, type-class based dispatch, and static purity enforcement. It includes a JVM language bridge and a foreign function interface that map Java classes and interfaces into functional types, allow

    Frege
    Auf GitHub ansehen↗3,700
  • dotnet/fsharpD

    dotnet/fsharp

    4,308Auf GitHub ansehen↗

    F# is a strongly typed, functional programming language and compiler for the .NET ecosystem. It transforms functional source code into Common Intermediate Language for execution on the .NET runtime and provides a foundational core library of primitive types and functions. The language emphasizes immutability and uses a static, constraint-based type inference system to automatically determine variable types without requiring explicit user annotations. It also functions as a Language Server Protocol provider, exposing compiler logic through a service-based API to deliver real-time code analysis

    F#
    Auf GitHub ansehen↗4,308
  • elm/compilerAvatar von elm

    elm/compiler

    7,794Auf GitHub ansehen↗

    This project is a functional programming compiler and JavaScript transpiler that transforms a statically typed language into optimized JavaScript for web browsers. It serves as a frontend architecture framework, providing a static type system and a package manager that enforces semantic versioning. The compiler uses a type-checking engine with automatic type inference to prevent runtime errors and guide code refactoring. It implements a structural pattern for managing application state and rendering user interfaces through a virtual DOM, utilizing immutable data and purity-based state transit

    Haskellcompilerelm
    Auf GitHub ansehen↗7,794
Alle 30 Alternativen zu Grin anzeigen→

Häufig gestellte Fragen

Was macht grin-compiler/grin?

Grin is a compiler infrastructure designed for the translation and optimization of high-level functional languages. It functions as a graph-reduction compiler, transforming source code into a standardized intermediate representation that facilitates whole-program analysis and efficient execution across diverse hardware architectures.

Was sind die Hauptfunktionen von grin-compiler/grin?

Die Hauptfunktionen von grin-compiler/grin sind: Functional Programming Compilers, Compiler Backends, Reduction Transformations, Compiler Intermediate Representations, Graph Compilation, Backend Infrastructure, Binary Size Optimizations, Whole-Program Analysis.

Welche Open-Source-Alternativen gibt es zu grin-compiler/grin?

Open-Source-Alternativen zu grin-compiler/grin sind unter anderem: gcc-mirror/gcc — This project is a multi-language compiler collection and cross-platform toolchain used to translate source code from… frege/frege — Frege is a purely functional programming language that compiles to JVM bytecode, providing Haskell-like semantics for… dotnet/fsharp — F# is a strongly typed, functional programming language and compiler for the .NET ecosystem. It transforms functional… elm/compiler — This project is a functional programming compiler and JavaScript transpiler that transforms a statically typed… jetbrains/kotlin — Kotlin is a statically typed, general-purpose programming language designed for type safety and concise syntax. It… genesis-embodied-ai/genesis-world — Genesis World is an embodied AI simulation platform designed for training robotic agents through physics-based…