Start reading Developing Web Applications with Haskell and Yesod on your Kindle in under a minute. Don't have a Kindle? Get your Kindle here or start reading now with a free Kindle Reading App.

Deliver to your Kindle or other device


Try it free

Sample the beginning of this book for free

Deliver to your Kindle or other device

Developing Web Applications with Haskell and Yesod

Developing Web Applications with Haskell and Yesod [Kindle Edition]

Michael Snoyman

Print List Price: £22.50
Kindle Price: £18.53 includes VAT* & free wireless delivery via Amazon Whispernet
You Save: £3.97 (18%)
* Unlike print books, digital books are subject to VAT.

Free Kindle Reading App Anybody can read Kindle books—even without a Kindle device—with the FREE Kindle app for smartphones, tablets and computers.

To get the free app, enter your e-mail address or mobile phone number.


Amazon Price New from Used from
Kindle Edition £18.53  
Paperback £22.50  
Earn a Free Kindle Book
Earn a Free Kindle Book
Buy a Kindle book between now and 31 March and receive a promotional code good for one free Kindle book. Terms and conditions apply. Learn more

Product Description

Book Description

Safety-Driven Web Development

Product Description

This fast-moving guide introduces web application development with Haskell and Yesod, a potent language/framework combination that supports high-performing applications that are modular, type-safe, and concise. You’ll work with several samples to explore the way Yesod handles widgets, forms, persistence, and RESTful content. You also get an introduction to various Haskell tools to supplement your basic knowledge of the language.

By the time you finish this book, you’ll create a production-quality web application with Yesod’s ready-to-use scaffolding. You’ll also examine several real-world examples, including a blog, a wiki, a JSON web service, and a Sphinx search server.

  • Build a simple application to learn Yesod’s foundation datatype and Web Application Interface (WAI)
  • Use Shakespearean template languages for HTML, CSS, and Javascript output
  • Produce cleaner, more modular code by learning how Yesod monads interact
  • Implement the yesod-form declarative API to build forms on top of widgets
  • Learn how Yesod and Haskell store session data and handle persistence
  • Use techniques to serve an HTML page and a machine-friendly JSON page from the same URL
  • Create reusable components for several applications with Yesod subsites

Product details

  • Format: Kindle Edition
  • File Size: 778 KB
  • Print Length: 298 pages
  • Simultaneous Device Usage: Unlimited
  • Publisher: O'Reilly Media; 1 edition (23 April 2012)
  • Sold by: Amazon Media EU S.à r.l.
  • Language: English
  • ASIN: B007X4M4K0
  • Text-to-Speech: Enabled
  • X-Ray:
  • Word Wise: Not Enabled
  • Amazon Bestsellers Rank: #448,147 Paid in Kindle Store (See Top 100 Paid in Kindle Store)
  •  Would you like to give feedback on images?

More About the Author

Discover books, learn about writers, and more.

Customer Reviews

There are no customer reviews yet on
5 star
4 star
3 star
2 star
1 star
Most Helpful Customer Reviews on (beta) 3.0 out of 5 stars  5 reviews
10 of 10 people found the following review helpful
5.0 out of 5 stars A Good Practical Introduction 19 Jun 2012
By M. Tosic - Published on
Format:Kindle Edition|Verified Purchase
I really enjoyed reading Haskell and Yesod. Compared to other Haskell books it is a very practical book that has its main focus on developing web applications on top of the Yesod framework. While reading about web development you can learn a lot about the more advanced / experimental features of the GHC compiler that offer new solutions to practical problems. Even though these features like Template Haskell, Quasiquotation, Overloaded Strings, etc. aren't explained in depth you get a good feeling for situations where they are a good fit.
Also the main point of the book, developing web applications in Yesod, comes across nicely. There are lots of small, complete examples that allow to test features of the framework separately and experiment with them without having to write a whole web application first. Still the transition to a complete app is easy enough and more complete examples leave no questions open.
All in all i would say the author hits a sweet spot. On the one hand the book is fast paced enough to keep you interested in the topic, on the other hand it is deep enough to explain the inner workings behind the scene and give good understanding about the interconnection between the different parts of the framework. Highly recommended if you are interested in web development and Haskell.
3 of 3 people found the following review helpful
2.0 out of 5 stars Circular with no index 23 Oct 2013
By Gavin Beatty - Published on
Format:Kindle Edition|Verified Purchase
The book leaves the impression that it's cobbled together from blog postings. Concepts are introduced in minor detail, then later hand-waved over with "don't worry about this for now" type comments. Then finally introduced. However, without an index, this makes for very frustrating reading, and ruins any use as a reference.
18 of 26 people found the following review helpful
2.0 out of 5 stars you better know Haskell first 2 July 2012
By R. Friesel Jr. - Published on
I thought that I might be the target audience for this book, but I was mistaken. In the preface of "Developing Web Applications with Haskell and Yesod" (O'Reilly, 2012), author Michael Snoyman describes this book as "for" two groups:

«The first group is long time Haskell users--already convinced of the advantages of Haskell--who are looking for a powerful framework for creating web applications. The second is web developers who are either dissatisfied with their existing tools, or are looking to expand their horizons into the functional world.»

I wasn't in the first group, but--gathering some enthusiasm from (arguably much smarter) friends--I thought that I might be in the second group. Succumbing to this peer pressure, and my own curiosity about Haskell, I dove in. I did this despite Snoyman's other assertion in the preface, that the book assumes a basic familiarity with Haskell. Having dabbled with Haskell before, [1] I'd assumed I'd at least be able to follow along.

Unfortunately, I struggled to follow along. Snoyman is clearly intimate with Yesod, [2] and quite knowledgeable of Haskell in a general sense, but part of me fears that this hinders the text--that in increasing the expected knowledge of the reader, that it comes at the cost of being accessible to newcomers. On the one hand, it seems unfair to say that Snoyman takes your level of expertise with Haskell for granted; after all, he does warn everyone up front that he is assuming some familiarity with the language. On the other hand, I have approached several web frameworks written in and backed by languages that I am otherwise new to, and have never been as stymied as I was here. As a counter example, when I was new to Grails, I picked up a copy of "Grails in Action" to guide my early foray; at that time, I had never before encountered Grails, had never written any Groovy, and was about as knowledgeable of Java then as I am of Haskell now. And though I found numerous flaws with "Grails in Action", they did get several things right--and two things that they utterly nailed were: (1) the first chapter where they walk you through building a trivial web app in 28 pages and (2) their 32 page language introduction which they aptly named "The Groovy Essentials". There really are no analogs to this in Snoyman's book: there is no trivial starter sample web app (not at the beginning), and the introduction to Haskell runs from page 7 to page 13.

It did not help that I had trouble even getting Haskell and Yesod running on my machine. [3]

I also did not fully understand what unique value Yesod brought as a web application framework. Snoyman mentions type-safety early and often, but this seemed to me to be an implicit benefit that did not get any clear illustrations. It was almost as if you were expected to already know what this was in fine-grained detail, and as such a demonstration was a foregone conclusion.

This is not to say that there were no compelling features presented and discussed. I saw several intriguing glimmers in the text. The i18n system (of all things) made my eyes light up, as did the high-level design of the widget system (though the syntax itself still screws up my brow). But these are small examples that make up the larger tapestry that I simply did not have the patience or inclination to finish weaving together.

All was not lost, however. Those promising glimmers? They did increase my interest in Haskell. I picked up "Learn You a Haskell for Great Good!: A Beginner's Guide" to read alongside this one, to get more familiar with the language itself while I otherwise dove into Yesod. Haskell itself is compelling, and I'm sure that I'll take a return trip to Yesod when I have a clearer picture of the surrounding landscape.


[1] The final chapter of Bruce Tate's Seven Languages in Seven Weeks: A Pragmatic Guide to Learning Programming Languages (Pragmatic Programmers) deals with Haskell. I did not believe (even naïvely) that this had given me a "command" of Haskell, but I had thought it enough of an introduction to at least get started here.

[2] Considering that he is the framework's principal author, he ought to be.

[3] Snoyman does not refer to specific versions of anything, so I found myself more/less forced to experiment. I installed the latest version of the Haskell Platform via Homebrew, and though I got the Cabal package manager running, the Yesod platform itself failed to compile. After going in circles with the compiler error reports, I eventually tried an older version of the Haskell Platform and that seemed to resolve things. Unfortunately, by then I was pretty demoralized and frustrated and a lot of my interest waned.


Full disclosure: I received a copy of this book from O'Reilly in exchange for writing a review.
1 of 1 people found the following review helpful
3.0 out of 5 stars REALLY needs an index 15 Aug 2013
By K. Hoff - Published on
Format:Paperback|Verified Purchase
This is the only Yesod reference I've been able to find and the advice is good when I can find the topic I'm looking for but the lack of an index is really hampering that.
3.0 out of 5 stars Great if you already know you want to use Yesod 13 Nov 2014
By 'Sprout - Published on
Format:Kindle Edition|Verified Purchase
A quick, deep dive into the implementation details of building a web stack with Haskell and Yesod. Teaches more about Yesod and related technologies than Haskell in general. This seems like a great book if you're looking for the "how" of using Yesod to build your web application more than the "why."
Were these reviews helpful?   Let us know

Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
First post:
Prompts for sign-in

Search Customer Discussions
Search all Amazon discussions

Look for similar items by category