Haste
A GHC-based Haskell to JavaScript compiler
...Support for modern web technologies such as WebSockets, WebStorage and Canvas. Simple JavaScript interoperability. Generates small, fast programs. Supports all GHC extensions except Template Haskell. Uses standard Haskell libraries. Cabal integration, simple, one-step build; no need for error prone Rube Goldberg machines of Vagrant, VirtualBox, GHC sources and other black magic. Concurrency and MVars with Haste.Concurrent. Unboxed arrays, ByteArrays, StableNames and other low level features. Low-level DOM base library. ...