A configuration language guaranteed to terminate

Latest on Hackage:1.1.0

This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow stackage.org to host generated Haddocks.

BSD3 licensed by Gabriel Gonzalez
Maintained by Gabriel439@gmail.com

Dhall is an explicitly typed configuration language that is not Turing complete. Despite being Turing incomplete, Dhall is a real programming language with a type-checker and evaluator.

Use this library to parse, type-check, evaluate, and pretty-print the Dhall configuration language. This package also includes an executable which type-checks a Dhall file and reduces the file to a fully evaluated normal form.

Read Dhall.Tutorial to learn how to use this library



  • BREAKING CHANGE: Non-empty lists no longer require a type annotation
    • This is a breaking change to the Haskell library, not the Dhall language
    • This change does not break existing Dhall programs
    • The Expr type was modified in a non-backwards-compatible way
  • Add new exprA parser
  • Add new InvalidType exception if input fails on an invalid Type
  • Improve documentation and tutorial


  • Add support for Nix-style "double single-quote" multi-line string literals
  • Add isNormalized
  • Improve documentation and tutorial
  • Build against wider range of http-client versions


  • Initial release


  • Accidental premature upload to Hackage. This release was blacklisted
comments powered byDisqus