Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Javascript Options

Michael Snoyman edited this page · 17 revisions
Clone this wiki locally

Yesod by default gives you Shakespeare-JS, formerly known as Julius. It is just Javascript that you can insert haskell values into. Also Shakespeare-Coffee, which is Coffeescript you can insert haskell values into.

Other options:

  • UHC js compiler
  • jmacro a quasi-quoter that allows insertion of haskell values into raw javascript like Julius. Also supports a haskell-like version of javascript.
  • ghcjs - example Yesod app - directly compile ghc code to javascript!
  • lambdascript - directly compile a subset of haskell to javascript
  • HJScript - javascript DSL.
  • Panther-Ajax Experimental library to write server side code that accesses the dom and uses continuations.
  • Emscripten — compiles LLVM/Clang output to JavaScript. If you use features of the GHC runtime you also have to compile it, which nobody has made an effort to figure out.
  • See this very broad list of javascript options. There is a Static typing section. There are also some other languages that have static types or type inference. There is a coffeescript extension that you can declare types with, but requires the google closure compiler.
  • Roy, meld JavaScript semantics with functional languages. Experimental, but has many bread-and-butter Haskell features. Probably does not generate efficient code.
  • Fantom, an OO/FP language that can compile to Javacript

Something went wrong with that request. Please try again.