When comparing Yesod vs Iris, the Slant community recommends Yesod for most people. In the question“What are the best backend web frameworks?” Yesod is ranked 12th while Iris is ranked 56th. The most important reason people chose Yesod is:
While not required, Yesod offers templating through a Shakespearean family of languages to produce page code.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Offers templating for type-safe, well-formed content
While not required, Yesod offers templating through a Shakespearean family of languages to produce page code.
Pro Uses type-safe URLs
Ensures that data provided by the URL is type-safe. This means that data in the URL has a definitive type.
Pro Can be used without knowing much Haskell
While Yesod is written in Haskell, developers can achieve basic functionality without much investment in the language.
Pro No need to find and install external libraries
Iris is a "batteries included" web framework, which means that a lot of features already come out of the box. This way you don't have to spend time and find third-party libraries to integrate to the framework for most of the tasks you need to complete.
Pro Efficiency
Efficiency by using a light engine.
Pro Development
Pro API
If you're familiar with expressjs or other modern web frameworks, Iris will make you feel at home.
Pro More than feature complete
Pro More than 250 examples
More than 250 examples for implementing web application.
Pro Low amount of bugs
Most issues are questions, few bug reports and if a bug is found it's quickly patched.
Pro Good for big projects
Iris is a good framework for big projects and the author helps solving problems.
Cons
Con Is hard to customize
Learning how Yesod works internally is hard. It is a large framework with complicated components. Finding the appropriate code and understanding how it contributes to the framework is difficult, meaning developers will struggle.
Con Too much template haskell
You actually want to code in haskell and not some DSL with "magic" hidden under the bonnet.
Con Previously experience with net/http
Previously experience with the Go's standard net/http package is necessary for you to move forward with Iris.