dhall-yaml: Convert between Dhall and YAML

[ compiler, gpl, library, program ] [ Propose Tags ]

Use this package if you want to convert between Dhall expressions and YAML. You can use this package as a library or an executable:


[Skip to Readme]
Versions [faq] 1.0.0, 1.0.1, 1.0.2, 1.0.3, 1.1.0, 1.2.0, 1.2.1, 1.2.2, 1.2.3
Change log CHANGELOG.md
Dependencies aeson (>=1.0.0.0 && <1.6), ansi-terminal (>=0.6.3.1 && <0.12), base (>=4.11.0.0 && <5), bytestring (<0.11), dhall (>=1.31.0 && <1.37), dhall-json (>=1.6.0 && <1.8), dhall-yaml, exceptions (>=0.8.3 && <0.11), HsYAML (==0.2.*), HsYAML-aeson (==0.2.*), optparse-applicative (>=0.14.0.0 && <0.17), prettyprinter, prettyprinter-ansi-terminal (>=1.1.1 && <1.2), text (>=0.11.1.0 && <1.3), vector [details]
License GPL-3.0-only
Copyright 2019 Gabriel Gonzalez
Author Gabriel Gonzalez
Maintainer Gabriel439@gmail.com
Category Compiler
Bug tracker https://github.com/dhall-lang/dhall-haskell/issues
Source repo head: git clone https://github.com/dhall-lang/dhall-haskell/tree/master/dhall-yaml
Uploaded by GabrielGonzalez at 2020-10-21T04:17:20Z
Distributions Arch:1.2.3, NixOS:1.2.2
Executables yaml-to-dhall, dhall-to-yaml-ng
Downloads 1856 total (169 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs available [build log]
Last success reported on 2020-10-21 [all 1 reports]

Modules

[Index] [Quick Jump]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees


Readme for dhall-yaml-1.2.3

[back to package description]

dhall-yaml

For installation or development instructions, see:

Full documentation here:

Introduction

This dhall-yaml package provides a Dhall to YAML compiler, dhall-to-yaml-ng, and a tool for deriving Dhall from YAML code: yaml-to-dhall.

Note that the dhall-json package also provides a dhall-to-yaml executable. Currently, the behavior of the dhall-to-yaml and dhall-to-yaml-ng executables should not differ much, but eventually the dhall-to-yaml-ng executable should be able to support greater functionality due to using the HsYAML package as an intermediate step in the transformation process.

Tutorials for the analogous JSON tools are available in the dhall-json package:

Example

$ dhall-to-yaml-ng <<< "{ foo = [1, 2, 3], bar = { baz = True } }" > example.yaml
$ cat example.yaml
bar:
  baz: true
foo:
- 1
- 2
- 3
$ yaml-to-dhall '{ foo : List Natural, bar : { baz : Bool } }' < example.yaml
{ bar = { baz = True }, foo = [ 1, 2, 3 ] }