packages feed

numhask-0.11.0.2: numhask.cabal

cabal-version:      3.0
name:               numhask
version:            0.11.0.2
synopsis:           A numeric class hierarchy.
description:
  This package provides alternative numeric classes over Prelude.

  The numeric class constellation looks somewhat like:

  ![nh](docs/other/nh.svg)

  == Usage

  >>> {-# LANGUAGE GHC2021 #-}
  >>> {-# LANGUAGE RebindableSyntax #-}
  >>> import NumHask.Prelude

  See "NumHask" for a detailed overview.

category:           mathematics
homepage:           https://github.com/tonyday567/numhask#readme
bug-reports:        https://github.com/tonyday567/numhask/issues
author:             Tony Day
maintainer:         tonyday567@gmail.com
copyright:          Tony Day
license:            BSD-3-Clause
license-file:       LICENSE
build-type:         Simple
tested-with:
  GHC ==8.6.5 || ==8.8.4 || ==8.10.7 || ==9.0.2 || ==9.2.8 || ==9.4.5 || ==9.6.2

extra-doc-files:    other/*.svg,
                    ChangeLog.md

source-repository head
  type:     git
  location: https://github.com/tonyday567/numhask
  subdir:   numhask

common ghc2021-stanza
  if impl(ghc >=9.2)
    default-language:
      GHC2021
  if impl(ghc <9.2)
    default-language:
      Haskell2010
    default-extensions:
      BangPatterns
      BinaryLiterals
      ConstrainedClassMethods
      ConstraintKinds
      DeriveDataTypeable
      DeriveFoldable
      DeriveFunctor
      DeriveGeneric
      DeriveLift
      DeriveTraversable
      DoAndIfThenElse
      EmptyCase
      EmptyDataDecls
      EmptyDataDeriving
      ExistentialQuantification
      ExplicitForAll
      FlexibleContexts
      FlexibleInstances
      ForeignFunctionInterface
      GADTSyntax
      GeneralisedNewtypeDeriving
      HexFloatLiterals
      ImplicitPrelude
      InstanceSigs
      KindSignatures
      MonomorphismRestriction
      MultiParamTypeClasses
      NamedFieldPuns
      NamedWildCards
      NumericUnderscores
      PatternGuards
      PolyKinds
      PostfixOperators
      RankNTypes
      RelaxedPolyRec
      ScopedTypeVariables
      StandaloneDeriving
      StarIsType
      TraditionalRecordSyntax
      TupleSections
      TypeApplications
      TypeOperators
      TypeSynonymInstances
  if impl(ghc <9.2) && impl(ghc >=8.10)
    default-extensions:
      ImportQualifiedPost
      StandaloneKindSignatures

common ghc-options-stanza
  ghc-options:
    -Wall
    -Wcompat
    -Wincomplete-record-updates
    -Wincomplete-uni-patterns
    -Wredundant-constraints
    -Widentities
    -Wpartial-fields
  if impl(ghc >=8.8)
    ghc-options:
      -fwrite-ide-info
      -hiedir=.hie

library
  import: ghc2021-stanza
  import: ghc-options-stanza
  hs-source-dirs: src
  default-extensions:
    RebindableSyntax
  -- keeping ormolu happy
  if impl(ghc >=8.10)
    default-extensions:
      NoImportQualifiedPost
  build-depends:
    base >=4.7 && <5,
    -- keeping cabal-docspec happy
    QuickCheck >=2.14 && <3
  exposed-modules:
    NumHask
    NumHask.Algebra.Additive
    NumHask.Algebra.Field
    NumHask.Algebra.Group
    NumHask.Algebra.Lattice
    NumHask.Algebra.Metric
    NumHask.Algebra.Action
    NumHask.Algebra.Multiplicative
    NumHask.Algebra.Ring
    NumHask.Data.Complex
    NumHask.Data.Integral
    NumHask.Data.Rational
    NumHask.Exception
    NumHask.Prelude

  other-modules: