name: fay version: 0.10.0.0 x-revision: 2 synopsis: A compiler for Fay, a Haskell subset that compiles to JavaScript. description: Fay is a proper subset of Haskell which can be compiled (type-checked) with GHC, and compiled to JavaScript. It is lazy, pure, with a Fay monad, an FFI, tail-recursion optimization (experimental). It implements no type system, for type-checking you should use GHC. . /Documentation/ . See documentation at or build your own documentation with: . > $ cabal unpack fay > $ cd fay-* > $ cabal install > $ dist/build/fay-docs/fay-docs . . /Examples/ . See . . /Release Notes/ . * Add TCO optimization. . * Added uncurrying optimization for non-partial applications. . * Add simple benchmarking program. . * Add SVG logo. . * Added Defined type and appropriate serialization. . * Treat Maybe as a nullable value in conversions. . * Added oscillator example. . * Add optimization flag. * Support tuple serialization. * Fix list length in pats (closes #145). . * Name resolution and some export list support. * Add codeworld space invaders example. . * NoImplicitPrelude is now passed automatically to GHC. Does not break code that uses the pragma (see #134). . * Add support for list comprehensions using desugaring from Haskell report. See #40 and #132. . * Make error messages a tiny bit friendlier, and some general house-keeping. . * Support negation expressions (see #116). . * Rewrite readFromFay using only Data, no Read/Show requirements (see #112). . See full history at: homepage: http://fay-lang.org/ license: BSD3 license-file: LICENSE author: Chris Done, Adam Bergmark maintainer: chrisdone@gmail.com, adam@edea.se copyright: 2012 Chris Done category: Development build-type: Custom cabal-version: >=1.8 data-files: js/runtime.js hs/stdlib.hs src/Language/Fay/Stdlib.hs extra-source-files: examples/ref.hs examples/alert.hs examples/console.hs examples/dom.hs examples/tailrecursive.hs examples/data.hs examples/canvaswater.hs examples/canvaswater.html examples/haskell.png -- Test cases tests/ints.hs tests/ints tests/asPatternMatch tests/caseList.hs tests/Double2.hs tests/fromInteger tests/List.hs tests/RecCon tests/recordPatternMatch tests/String.hs tests/asPatternMatch.hs tests/fromInteger.hs tests/RecCon.hs tests/recordPatternMatch2 tests/caseWildcard tests/Double3 tests/Monad tests/recordPatternMatch2.hs tests/tailRecursion tests/basicFunctions tests/caseWildcard.hs tests/Double3.hs tests/Monad2 tests/RecDecl tests/tailRecursion.hs tests/basicFunctions.hs tests/HierarchicalImport tests/Monad2.hs tests/RecDecl.hs tests/recordPatternMatch.hs tests/do tests/Double4 tests/then tests/Bool tests/doAssingPatternMatch tests/Double4.hs tests/HierarchicalImport.hs tests/Monad.hs tests/records tests/then.hs tests/Bool.hs tests/doAssingPatternMatch.hs tests/recordFunctionPatternMatch tests/records.hs tests/Double.hs tests/mutableReference tests/recordFunctionPatternMatch.hs tests/utf8 tests/case tests/doBindAssign tests/infixDataConst tests/mutableReference.hs tests/recordUseBeforeDefine tests/utf8.hs tests/case2 tests/doBindAssign.hs tests/emptyMain tests/infixDataConst.hs tests/RecordImport_Export tests/recordUseBeforeDefine.hs tests/case2.hs tests/emptyMain.hs tests/patternGuards tests/RecordImport_Export.hs tests/where tests/do.hs tests/List tests/patternGuards.hs tests/reservedWords tests/where.hs tests/case.hs tests/fix tests/List2 tests/RecordImport_Import tests/reservedWords.hs tests/Double tests/fix.hs tests/List2.hs tests/patternMatchFail.hs tests/RecordImport_Import.hs tests/caseList tests/Double2 tests/String tests/Hierarchical/Export.hs tests/Hierarchical/RecordDefined.hs -- Documentation files docs/beautify.js docs/highlight.pack.js docs/home.css docs/jquery.js docs/analytics.js -- Documentation snippets docs/snippets/conditions.hs docs/snippets/data.hs docs/snippets/declarations.hs docs/snippets/dom.hs docs/snippets/enums.hs docs/snippets/ffi.hs docs/snippets/functions.hs docs/snippets/lists.hs docs/snippets/patterns.hs docs/snippets/tail.hs docs/home.hs Flag devel Description: Don't build fay-tests and fay-docs if this flag is supplied Default: False library hs-source-dirs: src exposed-modules: Language.Fay, Language.Fay.Types, Language.Fay.FFI, Language.Fay.Prelude, Language.Fay.Convert, Language.Fay.Compiler, Language.Fay.Compiler.Misc, Language.Fay.Compiler.FFI, Language.Fay.Compiler.Optimizer other-modules: Language.Fay.Print, Control.Monad.IO, Language.Fay.Stdlib, System.Process.Extra, Data.List.Extra, Paths_fay ghc-options: -O2 -Wall build-depends: base >= 4 && < 4.7, mtl, haskell-src-exts < 1.14, aeson < 0.7, unordered-containers, containers, attoparsec, vector, text, utf8-string, bytestring, pretty-show, data-default, safe, language-ecmascript, syb, process, filepath, directory, groom, random if !flag(devel) build-depends: -- Requirements for the executables which -- `cabal-dev ghci' needs. HUnit, blaze-html >= 0.5, blaze-markup, 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 && < 4.7, mtl, haskell-src-exts < 1.14, aeson < 0.7, syb, unordered-containers, containers, attoparsec, vector, text, utf8-string, bytestring, pretty-show, process, data-default, safe, language-ecmascript, directory, filepath, groom, random, optparse-applicative, split, haskeline 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: Language.Fay.Compiler Test.Convert Test.Api Test.CommandLine Test.Util build-depends: base >= 4 && < 4.7, mtl, haskell-src-exts < 1.14, aeson < 0.7, syb, unordered-containers, containers, attoparsec, vector, text, utf8-string, bytestring, pretty-show, HUnit, process, filepath, directory, data-default, safe, language-ecmascript, groom, random, test-framework, test-framework-hunit, test-framework-th executable fay-docs if flag(devel) buildable: False hs-source-dirs: src ghc-options: -O2 -Wall main-is: Docs.hs other-modules: Text.Blaze.Extra build-depends: base >= 4 && < 4.7, mtl, haskell-src-exts < 1.14, aeson < 0.7, syb, unordered-containers, containers, attoparsec, vector, text, utf8-string, bytestring, pretty-show, HUnit, process, filepath, directory, blaze-html >= 0.5, blaze-markup, bytestring, time, data-default, safe, language-ecmascript, groom, random