ivo/package.yaml

77 lines
2.0 KiB
YAML

name: jtm-lambda-calculus
version: 0.1.0.0
github: "jamestmartin/lambda-calculus"
license: GPL-3
author: "James Martin"
maintainer: "james@jtmar.me"
copyright: "2019-2020 James Martin"
synopsis: "A simple implementation of the lambda calculus."
category: LambdaCalculus
description: Please see the README on GitHub at <https://github.com/jamestmartin/lambda-calculus#readme>
extra-source-files:
- README.md
default-extensions:
- BlockArguments
- ImportQualifiedPost
- LambdaCase
- OverloadedStrings
- PatternSynonyms
- ViewPatterns
dependencies:
- base >= 4.14 && < 5
- parsec >= 3.1 && < 4
- text >= 1.2 && < 2
- text-show >= 3.9 && < 4
- unordered-containers >= 0.2.13 && < 0.3
library:
source-dirs: src
ghc-options:
- -Weverything
# Useless Safe Haskell warnings
- -Wno-missing-safe-haskell-mode
- -Wno-unsafe
- -Wno-safe
# Other stupid warnings
- -Wno-implicit-prelude
- -Wno-missing-deriving-strategies
# Less stupid warnings, but I still don't care
- -Wno-unused-do-bind
- -Wno-all-missed-specialisations
# Explicit import lists are generally a good thing, but I don't want them
# in certain cases (e.g. importing my own modules, task-specific modules like the parser).
- -Wno-missing-import-lists
# I intentionally include unused top-level bindings
# as a way of documenting and explaining concepts.
- -Wno-unused-top-binds
executables:
jtm-lambda-calculus:
main: Main.hs
source-dirs: app
ghc-options:
- -threaded
- -rtsopts
- -with-rtsopts=-N
dependencies:
- jtm-lambda-calculus
tests:
jtm-lambda-calculus-test:
main: Spec.hs
source-dirs: test
ghc-options:
- -threaded
- -rtsopts
- -with-rtsopts=-N
dependencies:
- jtm-lambda-calculus
- generic-random >= 1.2 && < 2
- QuickCheck >= 2.14 && < 3
- tasty >= 1.2 && < 2
- tasty-hunit >= 0.10 && < 0.11
- tasty-quickcheck >= 0.10.1 && < 0.11