1. Bryan O'Sullivan

In of this series, we'll use the Persistent library and Template Haskell to create a simple database schema. This will enable us to run migrations with ease.

It will also allow us to write some simple type safe SQL queries!Once we have our database set up, we'll want to serve the information we're storing over a web API. We'll do this with the Servant library. Servant allows us to build endpoints that retrieve their query parameters in a type-safe way! Find out how in of the series!Now that we have our API set up, we'll see how we can make it faster by adding a Redis cache! We'll learn how to use the Redis bindings for Haskell so we can avoid using the database for some of our queries! Hospice elements and device models manual woodworkers. See how it all works in.Our end-to-end system is now quite complicated, so testing it is difficult for a variety of reasons.

World

In, we'll see some techinques to test our web API. We'll also use Docker to make this process easier.In the of our Real World Haskell series, we'll learn some more about advanced SQL queries. We'll extend our schema and use the Esqueleto library to perform type safe joins between our different data types!This series goes over some cool libraries, but there's still so much more to explore! Check out our and explore a ton of other libraries you can use for various tasks when making a production system in Haskell!

Book Description:This easy-to-use, fast-moving tutorial introduces you to functional programming with Haskell. You’ll learn how to use Haskell in a variety of practical ways, from short scripts to large and demanding applications. Real World Haskelltakes you through the basics of functional programming at a brisk pace, and then helps you increase your understanding of Haskell in real-world issues like I/O, performance, dealing with data, concurrency, and more as you move through each chapter. With this book, you will:. Understand the differences between procedural and functional programming.

English

Learn the features of Haskell, and how to use it to develop useful programs. Interact with filesystems, databases, and network services. Write solid code with automated tests, code coverage, and error handling. Harness the power of multicore systems via concurrent and parallel programmingYou’ll find plenty of hands-on exercises, along with examples of real Haskell programs that you can modify, compile, and run.

Bryan O'Sullivan

Whether or not you’ve used a functional language before, if you want to understand why Haskell is coming into its own as a practical language in so many major organizations, Real World Haskell is the best place to start.