packages feed

fay-0.16.0.1: fay.cabal

name:                fay
version:             0.16.0.1
synopsis:            A compiler for Fay, a Haskell subset that compiles to JavaScript.
description:         Fay is a proper subset of Haskell which is type-checked
                     with GHC, and compiled to JavaScript. It is lazy, pure, has a Fay monad,
                     an FFI, tail-recursion optimization (experimental), and support for cabal packages.
                     .
                     /Documentation/
                     .
                     See <http://fay-lang.org/>
                     .
                     /Examples/
                     .
                     See the examples directory and <https://github.com/faylang/fay/wiki#fay-in-the-wild>
                     .
                     /Release Notes/
                     .
                     See <https://github.com/faylang/fay/wiki/Changelog>
                     .
                     See full history at: <https://github.com/faylang/fay/wiki/Changelog>
homepage:            http://fay-lang.org/
bug-reports:         https://github.com/faylang/fay/issues
license:             BSD3
license-file:        LICENSE
author:              Chris Done, Adam Bergmark
maintainer:          adam@edea.se
copyright:           2012 Chris Done, Adam Bergmark
category:            Development, Web, Fay
build-type:          Custom
cabal-version:       >=1.8
data-files:          js/runtime.js
                     src/Fay/FFI.hs
extra-source-files:
  -- Examples
  examples/alert.hs
  examples/canvaswater.hs
  examples/canvaswater.html
  examples/console.hs
  examples/data.hs
  examples/dom.hs
  examples/haskell.png
  examples/ref.hs
  examples/tailrecursive.hs
  -- Test cases
  tests/Compile/CPPTypecheck.hs
  tests/Compile/ImportRecords.hs
  tests/Compile/Records.hs
  tests/Compile/CPPMultiLineStrings.hs
  tests/asPatternMatch.hs
  tests/asPatternMatch.res
  tests/AutomaticList.hs
  tests/AutomaticList.res
  tests/baseFixities.hs
  tests/baseFixities.res
  tests/basicFunctions.hs
  tests/basicFunctions.res
  tests/Bool.hs
  tests/Bool.res
  tests/case.hs
  tests/case.res
  tests/case2.hs
  tests/case2.res
  tests/caseList.hs
  tests/caseList.res
  tests/caseWildcard.hs
  tests/caseWildcard.res
  tests/Char.hs
  tests/Char.res
  tests/circular.hs
  tests/CPP.hs
  tests/CPP.res
  tests/curry.hs
  tests/curry.res
  tests/cycle.hs
  tests/cycle.res
  tests/Defined.hs
  tests/Defined.res
  tests/do.hs
  tests/do.res
  tests/doAssingPatternMatch.hs
  tests/doAssingPatternMatch.res
  tests/doBindAssign.hs
  tests/doBindAssign.res
  tests/doLet.hs
  tests/doLet.res
  tests/DoLet2.hs
  tests/DoLet2_partial.res
  tests/DoLet3.hs
  tests/DoLet3_partial.res
  tests/Double.hs
  tests/Double.res
  tests/Double2.hs
  tests/Double2.res
  tests/Double3.hs
  tests/Double3.res
  tests/Double4.hs
  tests/Double4.res
  tests/Either.hs
  tests/Either.res
  tests/emptyMain.hs
  tests/emptyMain.res
  tests/enumFrom.hs
  tests/enumFrom.res
  tests/Eq.hs
  tests/Eq.res
  tests/error.hs
  tests/ExportEThingAll.hs
  tests/ExportEThingAll.res
  tests/ExportEThingAll_Export.hs
  tests/ExportEThingAll_Export.res
  tests/ExportEThingWith.hs
  tests/ExportEThingWith.res
  tests/ExportList.hs
  tests/ExportList.res
  tests/ExportList_A.hs
  tests/ExportList_A.res
  tests/ExportList_B.hs
  tests/ExportList_B.res
  tests/ExportList_C.hs
  tests/ExportList_C.res
  tests/ExportList_D.hs
  tests/ExportList_D.res
  tests/ExportQualified_Export.hs
  tests/ExportQualified_Export.res
  tests/ExportQualified_Import.hs
  tests/ExportQualified_Import.res
  tests/ExportType.hs
  tests/ExportType.res
  tests/ffiExpr.hs
  tests/ffiExpr.res
  tests/ffimunging.hs
  tests/ffimunging.res
  tests/fix.hs
  tests/fix.res
  tests/Floating.hs
  tests/Floating.res
  tests/fromInteger.hs
  tests/fromInteger.res
  tests/GADTs_without_records.hs
  tests/GADTs_without_records.res
  tests/guards.hs
  tests/guards.res
  tests/GuardWhere.hs
  tests/GuardWhere.res
  tests/HidePreludeImport.hs
  tests/HidePreludeImport.res
  tests/HidePreludeImport_Import.hs
  tests/HidePreludeImport_Import.res
  tests/Hierarchical/Export.hs
  tests/Hierarchical/Export.res
  tests/Hierarchical/RecordDefined.hs
  tests/Hierarchical/RecordDefined.res
  tests/HierarchicalImport.hs
  tests/HierarchicalImport.res
  tests/ImportHiding.hs
  tests/ImportHiding.res
  tests/ImportIThingAll.hs
  tests/ImportIThingAll.res
  tests/ImportList.hs
  tests/ImportList.res
  tests/ImportList1/A.hs
  tests/ImportList1/A.res
  tests/ImportList1/B.hs
  tests/ImportList1/B.res
  tests/ImportList1/C.hs
  tests/ImportList1/C.res
  tests/ImportListType.hs
  tests/ImportListType.res
  tests/ImportType.hs
  tests/ImportType.res
  tests/ImportType2.hs
  tests/ImportType2.res
  tests/ImportType2I/A.hs
  tests/ImportType2I/A.res
  tests/ImportType2I/B.hs
  tests/ImportType2I/B.res
  tests/infixDataConst.hs
  tests/infixDataConst.res
  tests/Integral.hs
  tests/Integral.res
  tests/ints.hs
  tests/ints.res
  tests/Issue215/B.hs
  tests/Issue215/B.res
  tests/Issue215A.hs
  tests/Issue215A.res
  tests/Js2FayFunc.hs
  tests/Js2FayFunc.res
  tests/LazyOperators.hs
  tests/LazyOperators.res
  tests/linesAndWords.hs
  tests/linesAndWords.res
  tests/List.hs
  tests/List.res
  tests/List2.hs
  tests/List2.res
  tests/listComprehensions.hs
  tests/listComprehensions.res
  tests/listlen.hs
  tests/listlen.res
  tests/ModuleRecordClash/R.hs
  tests/ModuleRecordClash/R.res
  tests/ModuleRecordClash.hs
  tests/ModuleRecordClash.res
  tests/Monad.hs
  tests/Monad.res
  tests/Monad2.hs
  tests/Monad2.res
  tests/mutableReference.hs
  tests/mutableReference.res
  tests/namedFieldPuns.hs
  tests/namedFieldPuns.res
  tests/nameGen.hs
  tests/nameGen.res
  tests/negation.hs
  tests/negation.res
  tests/NestedImporting/A.hs
  tests/NestedImporting/A.res
  tests/NestedImporting.hs
  tests/NestedImporting.res
  tests/NestedImporting2/A.hs
  tests/NestedImporting2/A.res
  tests/NestedImporting2.hs
  tests/NestedImporting2.res
  tests/newtype.hs
  tests/newtype.res
  tests/NewtypeImport_Export.hs
  tests/NewtypeImport_Export.res
  tests/NewtypeImport_Import.hs
  tests/NewtypeImport_Import.res
  tests/Nullable.hs
  tests/Nullable.res
  tests/Num.hs
  tests/Num.res
  tests/nums.hs
  tests/nums.res
  tests/numTheory.hs
  tests/numTheory.res
  tests/Ord.hs
  tests/Ord.res
  tests/pats.hs
  tests/pats.res
  tests/patternGuards.hs
  tests/patternGuards.res
  tests/patternMatchFail.hs
  tests/patternMatchingTuples.hs
  tests/patternMatchingTuples.res
  tests/Ratio.hs
  tests/Ratio.res
  tests/RealFrac.hs
  tests/RealFrac.res
  tests/RecCon.hs
  tests/RecCon.res
  tests/RecDecl.hs
  tests/RecDecl.res
  tests/recordFunctionPatternMatch.hs
  tests/recordFunctionPatternMatch.res
  tests/RecordImport2_Export1.hs
  tests/RecordImport2_Export1.res
  tests/RecordImport2_Export2.hs
  tests/RecordImport2_Export2.res
  tests/RecordImport2_Import.hs
  tests/RecordImport2_Import.res
  tests/RecordImport_Export.hs
  tests/RecordImport_Export.res
  tests/RecordImport_Import.hs
  tests/RecordImport_Import.res
  tests/recordPatternMatch.hs
  tests/recordPatternMatch.res
  tests/recordPatternMatch2.hs
  tests/recordPatternMatch2.res
  tests/records.hs
  tests/records.res
  tests/recordUseBeforeDefine.hs
  tests/recordUseBeforeDefine.res
  tests/recordWildCards.hs
  tests/recordWildCards_partial.res
  tests/recursive.hs
  tests/recursive.res
  tests/ReExport1.hs
  tests/ReExport1.res
  tests/ReExport2.hs
  tests/ReExport2.res
  tests/ReExport3.hs
  tests/ReExport3.res
  tests/reservedWords.hs
  tests/reservedWords.res
  tests/sections.hs
  tests/sections.res
  tests/seq-fake.hs
  tests/seq-fake.res
  tests/seq.hs
  tests/serialization.hs
  tests/serialization.res
  tests/Sink.hs
  tests/Sink.res
  tests/SkipLetTypes.hs
  tests/SkipLetTypes.res
  tests/SkipWhereTypes.hs
  tests/SkipWhereTypes.res
  tests/String.hs
  tests/String.res
  tests/StringForcing.hs
  tests/StringForcing.res
  tests/succPred.hs
  tests/succPred.res
  tests/T190.hs
  tests/T190.res
  tests/T190_A.hs
  tests/T190_A.res
  tests/T190_B.hs
  tests/T190_B.res
  tests/T190_C.hs
  tests/T190_C.res
  tests/tailRecursion.hs
  tests/tailRecursion.res
  tests/then.hs
  tests/then.res
  tests/TupleCalls.hs
  tests/TupleCalls.res
  tests/TyVarSerialization.hs
  tests/TyVarSerialization.res
  tests/unit.hs
  tests/unit.res
  tests/utf8.hs
  tests/utf8.res
  tests/where.hs
  tests/where.res
  tests/whereBind.hs
  tests/whereBind.res
  tests/whereBind2.hs
  tests/whereBind2.res
  tests/whereBind3.hs
  tests/whereBind3.res

source-repository head
  type: git
  location: https://github.com/faylang/fay.git

Flag devel
  Description:       Don't build fay-tests if this flag is supplied
  Default:           False

library
  hs-source-dirs:    src
  exposed-modules:     Fay
                     , Fay.Compiler
                     , Fay.Compiler.Config
                     , Fay.Compiler.Debug
                     , Fay.Convert
                     , Fay.Types
                     , Fay.FFI
  other-modules:       Control.Monad.Extra
                     , Control.Monad.IO
                     , Data.List.Extra
                     , Fay.Compiler.Decl
                     , Fay.Compiler.Defaults
                     , Fay.Compiler.Exp
                     , Fay.Compiler.FFI
                     , Fay.Compiler.GADT
                     , Fay.Compiler.InitialPass
                     , Fay.Compiler.Misc
                     , Fay.Compiler.ModuleScope
                     , Fay.Compiler.Optimizer
                     , Fay.Compiler.Packages
                     , Fay.Compiler.Pattern
                     , Fay.Compiler.Print
                     , Fay.Compiler.QName
                     , Fay.Compiler.Typecheck
                     , Paths_fay
                     , System.Directory.Extra
                     , System.Process.Extra
  ghc-options:       -O2 -Wall -fno-warn-name-shadowing
  build-depends:     base >= 4 && < 5,
                     aeson,
                     attoparsec,
                     containers,
                     data-default,
                     directory,
                     filepath,
                     ghc-paths,
                     Cabal,
                     cpphs,
                     haskell-src-exts,
                     language-ecmascript >= 0.15,
                     mtl,
                     pretty-show,
                     process,
                     safe,
                     syb,
                     text,
                     unordered-containers,
                     utf8-string,
                     vector

  if !flag(devel)
    build-depends:
                     -- Requirements for the executables which
                     -- `cabal-dev ghci' needs.
                     HUnit,
                     bytestring,
                     time,
                     optparse-applicative >= 0.5,
                     split,
                     test-framework,
                     test-framework-hunit,
                     test-framework-th

executable fay
  hs-source-dirs:    src
  ghc-options:       -O2 -Wall
  ghc-prof-options:  -fprof-auto
  main-is:           Main.hs
  build-depends:     base >= 4 && < 5,
                     aeson,
                     containers,
                     cpphs,
                     data-default,
                     directory,
                     filepath,
                     ghc-paths,
                     Cabal,
                     haskell-src-exts,
                     language-ecmascript >= 0.10,
                     mtl,
                     process,
                     safe,
                     syb,
                     utf8-string,

                     haskeline,
                     optparse-applicative >= 0.5,
                     split

executable fay-tests
  if flag(devel)
    buildable:       False
  hs-source-dirs:    src
  ghc-options:       -O2 -Wall -threaded -with-rtsopts=-N
  ghc-prof-options:  -fprof-auto
  main-is:           Tests.hs
  other-modules:     Fay.Compiler
                     Test.CommandLine
                     Test.Compile
                     Test.Convert
                     Test.Util
  build-depends:     base >= 4 && < 5,
                     aeson,
                     attoparsec,
                     bytestring,
                     containers,
                     cpphs,
                     data-default,
                     directory,
                     filepath,
                     ghc-paths,
                     Cabal,
                     haskell-src-exts,
                     language-ecmascript >= 0.10,
                     mtl,
                     pretty-show,
                     process,
                     safe,
                     syb,
                     split,
                     text,
                     unordered-containers,
                     utf8-string,
                     vector,

                     HUnit,
                     test-framework,
                     test-framework-hunit,
                     test-framework-th