<div dir="ltr">Hi,<div>I&#39;m currently writing a tutorial on web applications using Haskell. I know the pros and cons of each server-side library (Yesod, Snap, Scotty, Warp, Happstack), but I&#39;m looking for the right choice for client-side programming that converts Haskell to JavaScript. I&#39;ve finally come to Fay vs. GHCJS, and would like your opinion on what&#39;s the best to tackle. My current list of pros and cons is:</div>

<div><br></div><div>Fay</div><div>===</div><div>Pros:</div><div>- Does not need GHC 7.8</div><div>- Easy FFI with JS</div><div>- Has libraries for integration with Yesod and Snap</div><div><br></div><div>Cons:</div><div>
- Only supports a subset of GHC (in particular, no type classes)</div>
<div><br></div><div><br></div><div>GHCJS</div><div>======</div><div>Pros:</div><div>- Supports full GHC</div><div>- Easy FFI with JS</div><div>- Highly opinionated point: will stay longer than Fay (but it&#39;s very important for not having a tutorial that is old in few months)</div>

<div><br></div><div>Cons:</div><div>- Needs GHC 7.8 (but provides a Vagrant image)</div></div>