There are several web frameworks for Haskell like Happstack, Snap, and Yesod, and probably a few more.

In what aspects do they differ from each other? For example:

  • features (e.g. server only, or also client scripting, easy support for different kinds of database)
  • maturity (e.g. stability, documentation quality)
  • scalability (e.g. performance, handy abstraction)
  • main targets

Also, what are examples of real-world sites / web apps using these frameworks?

Many thanks.

closed as too broad by amon, user40980, Bart van Ingen Schenau, Dan Pichelman, GlenH7 Dec 19 '14 at 20:04

Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • 2
    +1 Although I don't know Haskell, this could be interesting. – Anto Mar 9 '11 at 21:12
  • Are there free hosts available for Haskell websites? What would the requirements be for a server? – Armand Mar 10 '11 at 16:01
  • @Alison - I would assume not since you would most likely need a VPS or dedicated server. – Jetti Mar 10 '11 at 17:15
  • you could use the free tier at Amazon EC2 I guess for hosting – Zachary K Mar 27 '11 at 6:58
  • I was really hoping to get some people talking about other frameworks (so we could compare) – Zachary K Mar 27 '11 at 7:02

I can only speak on the behalf of Yesod, since I have only tried Snap and Yesod so far but quickly stuck with Yesod.

The main reason for Yesod is probably that it delivers a complete framework with a growing numbers of features, like

  • Typesafe Template Languages for HTML, CSS and JavaScript
  • Typesafe Routing
  • Splitting into Subsites
  • Database integration with Persistent
  • Pre-made subsites for re-occuring problems: Authorisation, Static, CRUD...

In my eyes, the big strength of Yesod is the compilation of its dynamic contents, e.g. HTML sites. The template site is parsed via Template Haskell and converted into a Haskell data structure. So the template is not parsed every time the user calls it. In my opinion, this is a major speed advantage, compared to PHP, and also to Snap which uses non-compiled templates, and it also helps a great deal for the scalability.

Yesod is approaching version 1.0 soon, according to its creator, and there are some Websites already running on it. I think the main target of Yesod is to deliver a type-safe, complete web application framework that delivers all your needs, and then some.

Also, Yesod integrates with the WAI-interface and works perfectly with the pure Haskell-server Warp.

Not the answer you're looking for? Browse other questions tagged or ask your own question.