When comparing Nested-Routes vs Happstack Lite, the Slant community recommends Happstack Lite for most people. In the question“What are the best Haskell web frameworks for building RESTful web services?” Happstack Lite is ranked 4th while Nested-Routes is ranked 9th. The most important reason people chose Happstack Lite is:
There is extensive documentation and tutorials for Happstack and Happstack Lite available for use. Documentation and tutorials help programmers write their code; with so many options, programmers will have an easy time learning the framework.
Ranked in these QuestionsQuestion Ranking
Pros
Pro Embed Attoparsec parsers and regular expressions in a routable url
If you have a data encoding you would like to allow as a path chunk, you can do so by routing with an attoparsec parser or regular expression directly.
Pro Nesting of Handlers
The ability to give a handler child handlers turns a list of handlers into a tree of handlers - much easier to maintain.
Pro Simple and Concise
Routing a RESTful api is very literal in Nested-Routes.
Pro Has extensive documentation
There is extensive documentation and tutorials for Happstack and Happstack Lite available for use. Documentation and tutorials help programmers write their code; with so many options, programmers will have an easy time learning the framework.
Pro Molded through 7+ years of feedback
Happstack has been around for over seven years. During this time developers used the framework and offered feedback to improve it. As a result, it is stable and unlikely to have major changes. Happstack Lite was created from all of this feedback
Pro Shares all of its components on gitHub
Having open source means that developers can customize the framework and offer suggestions and solutions to the code.
Cons
Con Complicated Types
There is a lot of advanced language extensions in use for the engine - if you have a typo somewhere, the errors are practically impossible to understand.
Con Handles exceptions poorly
When an exception occurs on the server, the error gets printed. By seeing an error that makes no sense to the user, his experience is negatively impacted. Having a negative experience can mean a user never visits the site again.
Con Allows bad code by not enforcing logic separation
Happstack allows developers to write code for controllers, routing, and models together. Doing so will dirty the code and make maintenance harder.