88 lines
2.2 KiB
YAML
88 lines
2.2 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
|
|
- DefaultSignatures
|
|
- EmptyCase
|
|
- EmptyDataDeriving
|
|
- FlexibleContexts
|
|
- FlexibleInstances
|
|
- ImportQualifiedPost
|
|
- LambdaCase
|
|
- OverloadedStrings
|
|
- PatternSynonyms
|
|
- StandaloneDeriving
|
|
- ViewPatterns
|
|
# Required for use of the 'trees that grow' pattern
|
|
- MultiParamTypeClasses
|
|
- TypeFamilies
|
|
# Used by recursion-schemes when using template haskell
|
|
- DeriveFoldable
|
|
- DeriveFunctor
|
|
- DeriveTraversable
|
|
- TemplateHaskell
|
|
|
|
dependencies:
|
|
- base >= 4.14 && < 5
|
|
- mtl >= 2.2 && < 3
|
|
- parsec >= 3.1 && < 4
|
|
- recursion-schemes >= 5.2 && < 6
|
|
- text >= 1.2 && < 2
|
|
- 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-all-missed-specialisations
|
|
- -Wno-missing-local-signatures
|
|
# 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
|
|
|
|
executables:
|
|
jtm-lambda-calculus:
|
|
main: Main.hs
|
|
source-dirs: app
|
|
ghc-options:
|
|
- -Wall
|
|
- -threaded
|
|
- -rtsopts
|
|
- -with-rtsopts=-N
|
|
dependencies:
|
|
- jtm-lambda-calculus
|
|
|
|
tests:
|
|
jtm-lambda-calculus-test:
|
|
main: Spec.hs
|
|
source-dirs: test
|
|
ghc-options:
|
|
- -Wall
|
|
- -threaded
|
|
- -rtsopts
|
|
- -with-rtsopts=-N
|
|
dependencies:
|
|
- jtm-lambda-calculus
|
|
- tasty >= 1.2 && < 2
|
|
- tasty-hunit >= 0.10 && < 0.11
|