$ account dhall-lang
This repository is the official language standard and conformance suite for Dhall, a programmable, non-Turing-complete configuration language. It is not a deployable application or library in the traditional sense; instead, it contains the authoritative formal specification: literate Haskell modules defining syntax, alpha-normalization, capture-avoiding substitution, beta-normalization, type inference, and CBOR binary encoding. The complete ABNF grammar and the reference parser provide ground truth for every Dhall implementation, while the versioned Prelude directory constitutes the standard library published at prelude.dhall-lang.org. The repo also includes Nix-based infrastructure for building docs, running CI, and hosting the project's own services, but the core value is the specification and its cross-implementation test corpus.
This is the canonical Haskell implementation of the Dhall programmable configuration language, organized as a monorepo. It provides a complete toolchain: a core library for parsing, type-checking, normalization, and import resolution; CLI executables for formatting, linting, freezing, and converting between Dhall and JSON/YAML/CSV/TOML/Nix/Bash; an LSP server for IDE integration; and a documentation generator. The architecture is modular with separate Cabal packages for each conversion backend and developer tool, all sharing the core dhall library. In production, it is used to generate and validate configuration files for systems like Kubernetes, CI pipelines, and Nix packages, ensuring type safety and reproducibility via content-addressed imports and semantic caching.