fay: A compiler for Fay, a Haskell subset that compiles to JavaScript.
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 http://fay-lang.org/ or build your own documentation with:
$ cabal unpack fay $ cd fay-* $ cabal install $ dist/build/fay-docs/fay-docs
Examples
See http://fay-lang.org/#examples.
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: https://github.com/faylang/fay/commits
Modules
[Index]
Flags
Automatic Flags
Name | Description | Default |
---|---|---|
devel | Don't build fay-tests and fay-docs if this flag is supplied | Disabled |
Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info
Downloads
- fay-0.10.0.0.tar.gz [browse] (Cabal source package)
- Package description (revised from the package)
Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.
Maintainer's Corner
For package maintainers and hackage trustees
Candidates