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
.
/Examples/
.
See the examples directory and
.
/Release Notes/
.
See
.
See full history at:
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