Fay
A proper subset of Haskell that compiles to JavaScript
Fay is a compiler for a proper subset of Haskell that type-checks using GHC and compiles to JavaScript. It supports pure functional programming, a Fay-specific monad, FFI, optional tail-call optimization, and integration with Cabal packages. GHC-compatible type checking, ensuring correctness. Lazy, pure functional semantics with a distinct Fay monad. Foreign Function Interface (FFI) to integrate native JS code. Compatible with standard Haskell packaging tools like Cabal.