How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.
Clash is a functional hardware compiler and hardware description language compiler that translates strongly typed functional programs written in Haskell into synthesizable VHDL, Verilog, and SystemVerilog code. It serves as a development tool allowing digital designers to write hardware descriptions in functional languages and compile them directly to FPGA targets and physical netlists. The compilation infrastructure covers structural hardware compilation, including graph-based code normalization, functional language translation, and netlist generation. It features type-level clock domain saf
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
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
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
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 main features of grin-compiler/grin are: Functional Programming Compilers, Compiler Backends, Reduction Transformations, Compiler Intermediate Representations, Graph Compilation, Backend Infrastructure, Binary Size Optimizations, Whole-Program Analysis.
Open-source alternatives to grin-compiler/grin include: clash-lang/clash-compiler — Clash is a functional hardware compiler and hardware description language compiler that translates strongly typed… 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…