5b0686b01c
Fixes https://github.com/dhall-lang/dhall-lang/issues/373 The standard specifies that `!=` should have higher precedence than `==`, which this change fixes. |
||
---|---|---|
dhall | ||
dhall-bash | ||
dhall-json | ||
dhall-text | ||
dhall-try | ||
nix | ||
.gitignore | ||
.gitmodules | ||
.travis.yml | ||
appveyor.yml | ||
cabal.project | ||
default.nix | ||
LICENSE | ||
README.md | ||
release.nix | ||
stack-lts-6.yaml | ||
stack-lts-11.yaml | ||
stack-lts-12.yaml | ||
stack.yaml |
dhall-haskell
You will probably want to read the language-agnostic README
here:
This repository focuses on the Haskell bindings to Dhall and contains the following packages:
dhall
-dhall-bash
-dhall-json
-dhall-text
-
Navigate to each package's directory for their respective README
s
Pre-built binaries
You can download pre-built binaries for Windows and Linux on the release page:
For OS X, use brew
to install the desired package. For example:
$ brew install dhall-json
You can also install pre-built Linux binaries for master
using Nix using
Nix's channel mechanism by following the instructions at this link:
If you want to directly install the latest build without a channel, you can visit one of the following links:
- https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall/latest
- https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall-bash/latest
- https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall-json/latest
- https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall-text/latest
... and then click the "Help" button in the bottom right corner, which will
show you a nix-env
command that you can run to install the prebuilt
executable.
If you have the jq
command-line tool installed then you can do this in one
command by running:
$ nix-env -i "$(curl -L https://hydra.dhall-lang.org/job/dhall-haskell/master/linux-dhall/latest/api/get-info | jq -r .outPath)"
These instructions also work for any pull request, too, by replacing master
with the pull request number for any of the above URLs.
Building from source
cabal
You can build all of the packages by running:
$ cabal new-build all
And each of them with cabal new-build <package-name>
, for example:
$ cabal new-build dhall
... or you can run cabal new-build
within each package directory.
nix
You can build all of the packages by running:
$ nix-build
... or you can run nix-build
within each package's respective directory to
build just that one package.
You can install all of the packages by running:
$ nix-env --install --file default.nix
... or you can run the same command within each package's respective directory to install just that one package.
You can develop any package by navigating to that package's directory and running:
$ nix-shell
[nix-shell]$ cabal configure
[nix-shell]$ cabal build
[nix-shell]$ cabal test
... or you can add nix: True
to your ~/.cabal/config
file and then you can
run the same cabal
commands without an explicit nix-shell
:
$ cabal configure
$ cabal build
$ cabal test
stack
You can build all of the packages with
$ stack build
And each of them with stack build <package-name>
, for example:
$ stack build dhall-json
Build the website
Building the website from source is currently only supported for Nix on Linux.
You can build the static assets by running:
$ nix-build --attr website
... then open ./result/index.html
in your browser.
You can also download an archive containing the pre-built website from CI using this link:
Contributing
Read the following guide if you would like to contribute: