llvm-hs-pretty and llvm-hs

These are complementary tools where the pretty printer depends on the bindings library to convert LLVM AST representations back into human-readable textual IR format.

llvm-hs-pretty
48
Emerging
llvm-hs
43
Emerging
Maintenance 2/25
Adoption 9/25
Maturity 16/25
Community 21/25
Maintenance 0/25
Adoption 10/25
Maturity 8/25
Community 25/25
Stars: 70
Forks: 37
Downloads:
Commits (30d): 0
Language: LLVM
License: MIT
Stars: 529
Forks: 129
Downloads:
Commits (30d): 0
Language: LLVM
License:
Stale 6m No Package No Dependents
No License Stale 6m No Package No Dependents

About llvm-hs-pretty

llvm-hs/llvm-hs-pretty

Pretty printer for LLVM AST to Textual IR

Converts `llvm-hs-pure` AST back to canonical LLVM textual IR, enabling round-trip validation through the LLVM verifier without C++ bindings. Uses a polymorphic `PP` typeclass to support printing individual IR elements (constants, instructions) alongside complete modules. Validates fidelity through test suite that parses official LLVM IR, reconstructs it via `llvm-hs-pure` AST, and compares textual output against originals.

About llvm-hs

llvm-hs/llvm-hs

Haskell bindings for LLVM

Provides both low-level FFI bindings matching the LLVM C API and high-level pure Haskell abstractions like IRBuilder and ModuleBuilder for easier code generation. The FFI layer extends upstream LLVM's C API with missing functionality from the C++ interface, while preferring pure Haskell implementations where possible. Well-suited for implementing compiler backends, as demonstrated by projects like Google's Dex research language.

Scores updated daily from GitHub, PyPI, and npm data. How scores work