packages feed

stgi-1.0.1: stgi.cabal

name:                stgi
version:             1.0.1
synopsis:            Educational implementation of the STG (Spineless Tagless
                     G-machine)
description:         STGi is a visual STG implementation to help understand
                     Haskell's execution model.
                     .
                     It does this by guiding through the running of a program,
                     showing stack and heap, and giving explanations of the
                     applied transition rules.
                     .
                     Here is what an intermediate state looks like:
                     .
                     <<http://i.imgur.com/ouPwfgW.png>>
                     .
                     For further information, see README.md.
homepage:            https://github.com/quchen/stgi#readme
license:             BSD3
license-file:        LICENSE.md
author:              David Luposchainsky <dluposchainsky (λ) gmail (dot) com>
maintainer:          David Luposchainsky <dluposchainsky (λ) gmail (dot) com>
copyright:           David Luposchainsky <dluposchainsky (λ) gmail (dot) com>
category:            Development
build-type:          Simple
extra-source-files:  .stylish-haskell.yaml
                   , HLint.hs
                   , LICENSE.md
                   , README.md
                   , screenshot.png
                   , stack.yaml
cabal-version:       >=1.10
tested-with:         GHC >= 7.10 && <= 7.10.3

Flag doctest
  Description: Enable doctests
  Default:     False


library
  hs-source-dirs:      src
  exposed-modules:     Data.Stack
                     , Stg.ExamplePrograms
                     , Stg.Language
                     , Stg.Language.Prettyprint
                     , Stg.Machine
                     , Stg.Machine.Env
                     , Stg.Machine.Evaluate
                     , Stg.Machine.GarbageCollection
                     , Stg.Machine.GarbageCollection.Common
                     , Stg.Machine.GarbageCollection.TriStateTracing
                     , Stg.Machine.GarbageCollection.TwoSpaceCopying
                     , Stg.Machine.Heap
                     , Stg.Machine.Types
                     , Stg.Marshal
                     , Stg.Marshal.FromStg
                     , Stg.Marshal.ToStg
                     , Stg.Parser.Parser
                     , Stg.Parser.QuasiQuoter
                     , Stg.Prelude
                     , Stg.Prelude.Bool
                     , Stg.Prelude.Function
                     , Stg.Prelude.List
                     , Stg.Prelude.Maybe
                     , Stg.Prelude.Number
                     , Stg.Prelude.Tuple
                     , Stg.Util
  ghc-options:         -Wall
  build-depends:       base >= 4.8 && < 5
                     , ansi-wl-pprint
                     , containers       >= 0.5
                     , deepseq          >= 1.4
                     , parsers          >= 0.12
                     , semigroups       >= 0.18
                     , template-haskell >= 2.10
                     , text             >= 1.2
                     , th-lift          >= 0.7
                     , transformers     >= 0.4
                     , trifecta         >= 1.5
  other-extensions:    DeriveGeneric
                     , FlexibleInstances
                     , GeneralizedNewtypeDeriving
                     , LambdaCase
                     , MultiWayIf
                     , OverloadedLists
                     , OverloadedStrings
                     , QuasiQuotes
                     , RankNTypes
                     , TemplateHaskell
                     , TupleSections
                     , TypeFamilies

  default-language:    Haskell2010

executable stgi-exe
  hs-source-dirs:      app
  main-is:             Main.hs
  other-modules:       CmdLineArgs
                       Stg.RunForPager
  ghc-options:         -threaded -rtsopts -with-rtsopts=-N
  build-depends:       base
                     , stgi
                     , ansi-terminal
                     , semigroups
                     , text
  default-language:    Haskell2010

test-suite testsuite
  type:                exitcode-stdio-1.0
  hs-source-dirs:      test/Testsuite
  main-is:             Main.hs
  other-modules:       Test.Language
                     , Test.Language.Prettyprint
                     , Test.Machine
                     , Test.Machine.Evaluate
                     , Test.Machine.Evaluate.Errors
                     , Test.Machine.Evaluate.Programs
                     , Test.Machine.Evaluate.Rules
                     , Test.Machine.Evaluate.TestTemplates.MachineState
                     , Test.Machine.Evaluate.TestTemplates.MarshalledValue
                     , Test.Machine.Evaluate.TestTemplates.Util
                     , Test.Machine.GarbageCollection
                     , Test.Machine.Heap
                     , Test.Marshal
                     , Test.Orphans
                     , Test.Orphans.Language
                     , Test.Orphans.Machine
                     , Test.Orphans.Stack
                     , Test.Parser
                     , Test.Parser.Parser
                     , Test.Parser.QuasiQuoter
                     , Test.Prelude
                     , Test.Prelude.Bool
                     , Test.Prelude.Function
                     , Test.Prelude.List
                     , Test.Prelude.Maybe
                     , Test.Prelude.Number
                     , Test.Prelude.Tuple
                     , Test.Stack
                     , Test.Util
                     , Test.UtilTH
  build-depends:       base
                     , stgi
                     , ansi-wl-pprint
                     , containers >= 0.5
                     , deepseq >= 1.4
                     , semigroups >= 0.18
                     , tasty
                     , tasty-html
                     , tasty-hunit
                     , tasty-quickcheck, QuickCheck
                     , tasty-rerun
                     , tasty-smallcheck, smallcheck
                     , template-haskell
                     , text
  ghc-options:         -Wall -threaded -rtsopts -with-rtsopts=-N
  default-language:    Haskell2010
  other-extensions:    FlexibleContexts
                     , LambdaCase
                     , MultiParamTypeClasses
                     , NumDecimals
                     , OverloadedLists
                     , OverloadedStrings
                     , QuasiQuotes
                     , RankNTypes
                     , TemplateHaskell
  if flag(doctest)
    buildable: False
  else
    buildable: True

test-suite doctest
  type:                exitcode-stdio-1.0
  hs-source-dirs:      test/Doctest
  main-is:             Main.hs
  build-depends:       base
                     , doctest >= 0.10
  ghc-options:         -Wall -threaded -rtsopts -with-rtsopts=-N
  default-language:    Haskell2010
  if flag(doctest)
    buildable: True
  else
    buildable: False

source-repository head
  type:     git
  location: https://github.com/quchen/stgi