name: fay version: 0.9.2.0 x-revision: 1 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/ . * Fix name encoding. . * Add content-type to HTML generation. . * Add calculator example. . * Support built-in operators as (+), (*), etc. . * Fix self-referential thunks (see #89). . * Don't import modules twice. . * Handle where bindings in function definitions. . * Support record updates. . * Move to GHC type-checking (with --no-ghc). . * Remove invalid chars from UTF-8 tests. . * Remove --autorun, now it's the default. . * Fix nullary constructor comparison. . * Replace . with $ in module name generation. . * Reverse -fdevel flag. . * Skip type declarations in where. . * Add true/false to keywords. . * Add laziness back to infix operators. . * Switch to applicative parsing of options. . * Fix parens in conversion functions. . See full history at: homepage: http://fay-lang.org/ license: BSD3 license-file: LICENSE author: Chris Done maintainer: chrisdone@gmail.com 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/caseList.js tests/Double2.js tests/fromInteger.hs tests/List.js tests/RecCon.hs tests/recordPatternMatch2 tests/String.js tests/asPatternMatch.js tests/caseWildcard tests/Double3 tests/fromInteger.js tests/Monad tests/RecCon.js tests/recordPatternMatch2.hs tests/tailRecursion tests/basicFunctions tests/caseWildcard.hs tests/Double3.hs tests/Monad2 tests/RecDecl tests/recordPatternMatch2.js tests/tailRecursion.hs tests/basicFunctions.hs tests/caseWildcard.js tests/Double3.js tests/HierarchicalImport tests/Monad2.hs tests/RecDecl.hs tests/recordPatternMatch.hs tests/tailRecursion.js tests/basicFunctions.js tests/do tests/Double4 tests/Monad2.js tests/RecDecl.js tests/recordPatternMatch.js 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/Double4.js tests/Monad.js tests/recordFunctionPatternMatch tests/records.hs tests/then.js tests/Bool.js tests/doAssingPatternMatch.js tests/Double.hs tests/HierarchicalImport.js tests/mutableReference tests/recordFunctionPatternMatch.hs tests/records.js tests/utf8 tests/case tests/doBindAssign tests/Double.js tests/infixDataConst tests/mutableReference.hs tests/recordFunctionPatternMatch.js tests/recordUseBeforeDefine tests/utf8.hs tests/case2 tests/doBindAssign.hs tests/emptyMain tests/infixDataConst.hs tests/mutableReference.js tests/RecordImport_Export tests/recordUseBeforeDefine.hs tests/utf8.js tests/case2.hs tests/doBindAssign.js tests/emptyMain.hs tests/infixDataConst.js tests/patternGuards tests/RecordImport_Export.hs tests/recordUseBeforeDefine.js tests/where tests/case2.js tests/do.hs tests/emptyMain.js tests/List tests/patternGuards.hs tests/RecordImport_Export.js tests/reservedWords tests/where.hs tests/case.hs tests/do.js tests/fix tests/List2 tests/patternGuards.js tests/RecordImport_Import tests/reservedWords.hs tests/where.js tests/case.js tests/Double tests/fix.hs tests/List2.hs tests/patternMatchFail.hs tests/RecordImport_Import.hs tests/reservedWords.js tests/caseList tests/Double2 tests/fix.js tests/List2.js tests/patternMatchFail.js tests/RecordImport_Import.js 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 other-modules: Language.Fay.Print, Control.Monad.IO, Language.Fay.Stdlib, System.Process.Extra, Paths_fay ghc-options: -O2 -Wall build-depends: base >= 4 && < 4.7, mtl, haskell-src-exts < 1.14, aeson, unordered-containers, attoparsec, vector, text, utf8-string, bytestring, pretty-show, data-default, safe, language-ecmascript, syb, process, filepath, directory, groom 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, unordered-containers, attoparsec, vector, text, utf8-string, bytestring, pretty-show, process, data-default, safe, language-ecmascript, directory, filepath, groom, 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, unordered-containers, attoparsec, vector, text, utf8-string, bytestring, pretty-show, HUnit, process, filepath, directory, data-default, safe, language-ecmascript, groom, 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, unordered-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