packages feed

lambda-calculator-3.1.1.0: lambda-calculator.cabal

cabal-version: 1.12

-- This file has been generated from package.yaml by hpack version 0.35.0.
--
-- see: https://github.com/sol/hpack
--
-- hash: b69ff1a0ee1fecfd1fc079571eba787eee329de70ac3e79d30bdd4c768a28ec9

name:           lambda-calculator
version:        3.1.1.0
synopsis:       A lambda calculus interpreter
description:    A simple implementation of the Untyped Lambda Calculus
category:       LambdaCalculus,Language,Teaching
homepage:       https://github.com/sgillespie/lambda-calculator#readme
bug-reports:    https://github.com/sgillespie/lambda-calculator/issues
author:         Sean D Gillespie
maintainer:     sean@mistersg.net
copyright:      2016-2023 Sean Gillespie
license:        MIT
license-file:   LICENSE
build-type:     Simple

source-repository head
  type: git
  location: https://github.com/sgillespie/lambda-calculator

library
  exposed-modules:
      Language.Lambda.Shared.Errors
      Language.Lambda.Shared.UniqueSupply
      Language.Lambda.Untyped
      Language.Lambda.Untyped.Expression
      Language.Lambda.Untyped.Eval
      Language.Lambda.Untyped.Parser
      Language.Lambda.Untyped.State
      Language.Lambda.SystemF
      Language.Lambda.SystemF.Eval
      Language.Lambda.SystemF.Expression
      Language.Lambda.SystemF.Parser
      Language.Lambda.SystemF.State
      Language.Lambda.SystemF.TypeCheck
  other-modules:
      Language.Lambda
      Paths_lambda_calculator
  hs-source-dirs:
      src
  default-extensions:
      BangPatterns
      ConstraintKinds
      DataKinds
      DefaultSignatures
      DeriveDataTypeable
      DeriveFoldable
      DeriveFunctor
      DeriveGeneric
      DeriveTraversable
      DoAndIfThenElse
      EmptyDataDecls
      ExistentialQuantification
      FlexibleContexts
      FlexibleInstances
      FunctionalDependencies
      GADTs
      GeneralizedNewtypeDeriving
      InstanceSigs
      KindSignatures
      LambdaCase
      MultiParamTypeClasses
      MultiWayIf
      NamedFieldPuns
      NoImplicitPrelude
      OverloadedStrings
      PartialTypeSignatures
      PatternGuards
      PolyKinds
      RankNTypes
      RecordWildCards
      ScopedTypeVariables
      StandaloneDeriving
      TupleSections
      TypeFamilies
      TypeSynonymInstances
      ViewPatterns
  ghc-options: -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wpartial-fields -Wredundant-constraints
  build-depends:
      base >=4.9 && <5
    , containers
    , microlens
    , mtl
    , parsec
    , prettyprinter
    , rio
  default-language: Haskell2010

executable lambda-calculator
  main-is: Main.hs
  other-modules:
      CliOptions
      Repl
      Repl.Shared
      Repl.SystemF
      Repl.Untyped
      Paths_lambda_calculator
  hs-source-dirs:
      app
  default-extensions:
      BangPatterns
      ConstraintKinds
      DataKinds
      DefaultSignatures
      DeriveDataTypeable
      DeriveFoldable
      DeriveFunctor
      DeriveGeneric
      DeriveTraversable
      DoAndIfThenElse
      EmptyDataDecls
      ExistentialQuantification
      FlexibleContexts
      FlexibleInstances
      FunctionalDependencies
      GADTs
      GeneralizedNewtypeDeriving
      InstanceSigs
      KindSignatures
      LambdaCase
      MultiParamTypeClasses
      MultiWayIf
      NamedFieldPuns
      NoImplicitPrelude
      OverloadedStrings
      PartialTypeSignatures
      PatternGuards
      PolyKinds
      RankNTypes
      RecordWildCards
      ScopedTypeVariables
      StandaloneDeriving
      TupleSections
      TypeFamilies
      TypeSynonymInstances
      ViewPatterns
  ghc-options: -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wpartial-fields -Wredundant-constraints -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      base >=4.9 && <5
    , bytestring
    , containers
    , lambda-calculator
    , microlens
    , mtl
    , optparse-applicative
    , prettyprinter
    , repline
    , rio
    , text
  default-language: Haskell2010

test-suite lambda-calculus-lint
  type: exitcode-stdio-1.0
  main-is: HLint.hs
  hs-source-dirs:
      scripts
  default-extensions:
      BangPatterns
      ConstraintKinds
      DataKinds
      DefaultSignatures
      DeriveDataTypeable
      DeriveFoldable
      DeriveFunctor
      DeriveGeneric
      DeriveTraversable
      DoAndIfThenElse
      EmptyDataDecls
      ExistentialQuantification
      FlexibleContexts
      FlexibleInstances
      FunctionalDependencies
      GADTs
      GeneralizedNewtypeDeriving
      InstanceSigs
      KindSignatures
      LambdaCase
      MultiParamTypeClasses
      MultiWayIf
      NamedFieldPuns
      NoImplicitPrelude
      OverloadedStrings
      PartialTypeSignatures
      PatternGuards
      PolyKinds
      RankNTypes
      RecordWildCards
      ScopedTypeVariables
      StandaloneDeriving
      TupleSections
      TypeFamilies
      TypeSynonymInstances
      ViewPatterns
  ghc-options: -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wpartial-fields -Wredundant-constraints -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      base >=4.9 && <5
    , hlint
    , microlens
    , mtl
    , prettyprinter
    , rio
  default-language: Haskell2010

test-suite lambda-calculus-test
  type: exitcode-stdio-1.0
  main-is: Spec.hs
  other-modules:
      Language.Lambda.SystemF.EvalSpec
      Language.Lambda.SystemF.Examples.BoolSpec
      Language.Lambda.SystemF.Examples.NatSpec
      Language.Lambda.SystemF.ExpressionSpec
      Language.Lambda.SystemF.HspecUtils
      Language.Lambda.SystemF.ParserSpec
      Language.Lambda.SystemF.TypeCheckSpec
      Language.Lambda.SystemFSpec
      Language.Lambda.Untyped.EvalSpec
      Language.Lambda.Untyped.Examples.BoolSpec
      Language.Lambda.Untyped.Examples.NatSpec
      Language.Lambda.Untyped.Examples.PairSpec
      Language.Lambda.Untyped.ExpressionSpec
      Language.Lambda.Untyped.HspecUtils
      Language.Lambda.Untyped.ParserSpec
      Language.Lambda.UntypedSpec
      Paths_lambda_calculator
  hs-source-dirs:
      test
  default-extensions:
      BangPatterns
      ConstraintKinds
      DataKinds
      DefaultSignatures
      DeriveDataTypeable
      DeriveFoldable
      DeriveFunctor
      DeriveGeneric
      DeriveTraversable
      DoAndIfThenElse
      EmptyDataDecls
      ExistentialQuantification
      FlexibleContexts
      FlexibleInstances
      FunctionalDependencies
      GADTs
      GeneralizedNewtypeDeriving
      InstanceSigs
      KindSignatures
      LambdaCase
      MultiParamTypeClasses
      MultiWayIf
      NamedFieldPuns
      NoImplicitPrelude
      OverloadedStrings
      PartialTypeSignatures
      PatternGuards
      PolyKinds
      RankNTypes
      RecordWildCards
      ScopedTypeVariables
      StandaloneDeriving
      TupleSections
      TypeFamilies
      TypeSynonymInstances
      ViewPatterns
  ghc-options: -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wpartial-fields -Wredundant-constraints -threaded -rtsopts -with-rtsopts=-N
  build-depends:
      HUnit
    , base >=4.9 && <5
    , containers
    , hspec
    , lambda-calculator
    , microlens
    , mtl
    , prettyprinter
    , rio
  default-language: Haskell2010