優秀的Haskell圖書
Haskell 是一種標準化的,非限定性語義、強靜態類型的通用純函數式編程語言。不同于其它大多數編程語言,它包含了許多較新的技術,如靜態多態、高階函數、用戶定義 代數數據類型、模塊系統等等。它內置了并發和并行性、以及調試器和分析器,有著豐富的庫和活躍的社區,第三方開源庫和工具數量接近 5000。這篇文章挑選了可免費下載的 優秀 Haskell 圖書,幫助程序員深入理解和掌握這門語言。
1. Real World Haskell |
|||||||||
![]() |
Real World Haskell is an easy-to-use, fast-moving tutorial that introduces the reader to functional programming with Haskell. The reader learns how to use Haskell in a variety of practical ways, from short scripts to large and demanding applications. Real World Haskell takes 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. Chapters cover:
This work is licensed under a Creative Commons Attribution-Noncommercial 3.0 License. |
2. Developing Web Applications with Haskell and Yesod |
|||||||||
![]() |
Developing Web Applications with Haskell and Yesod is a guide which 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. The reader works with several samples to explore the way Yesod handles widgets, forms, persistence, and RESTful content. The reader also receives an introduction to various Haskell tools to supplement basic knowledge of the language. After completing the book, the reader will have created a production-quality web application with Yesod’s ready-to-use scaffolding. Real-world examples, including a blog, a wiki, a JSON web service, and a Sphinx search server will have been examined. Chapters cover:
|
3. Learn You a Haskell for Great Good! |
|||||||||
![]() |
Learn You a Haskell for Great Good! is an illustrated guide to this complex functional language. Packed with the author's original artwork, pop culture references, and most importantly, useful example code, this book teaches functional fundamentals in a way you never thought possible. Chapters cover:
|
4. Write Yourself a Scheme in 48 Hours |
|||||||||
![]() |
Write Yourself a Scheme in 48 Hours starts off with command-line arguments and parsing, and progresses to writing a fully-functional Scheme interpreter that implements a good-sized subset of R5RS Scheme. Along the way, the reader learns Haskell's I/O, mutable state, dynamic typing, error handling, and parsing features. By the end of the book, the reader should be fairly fluent in both Haskell and Scheme. Chapters cover:
|
5. The Haskell School of Music -- From Signals to Symphonies |
|||||||||
![]() |
The Haskell School of Music -- From Signals to Symphonies (a work in progress) is a book that describes Euterpea, a computer music library developed in Haskell. The library allows programming computer music applications both at the note level and the signal level.
|
6. Yet Another Haskell Tutorial |
|||||||||
![]() |
Yet Another Haskell Tutorial provides a complete introduction to the Haskell programming language. It assumes no knowledge of the Haskell language or familiarity with functional programming in general. Chapters cover:
|
7. Parallel and Concurrent Programming in Haskell |
|||||||||
![]() |
Parallel and Concurrent Programming in Haskell introduces the main programming models available for concurrent and parallel programming in Haskell. This tutorial takes a deliberately practical approach: most of the examples are real Haskell programs that you can compile, run, measure, modify and experiment with. Chapters cover:
In order to follow this tutorial you should have a basic knowledge of Haskell, including programming with monads. |
8. A Gentle Introduction to Haskell Version 98 |
|||||||||
![]() |
A Gentle Introduction to Haskell Version 98 is intended to serve as a supplement to the Haskell Report. The authors aim to offer a general introduction to Haskell for anyone who has some experience of another language. Chapters cover:
|
9. Haskell |
|||||||||
![]() |
The aim of this book is to introduce the reader to both the Haskell language and to computer programming in general. The book covers all stages, from the very basics to the most advanced features of Haskell. It is divided into 3 sections: The Beginner's Track, the Advanced Track, and Practical Haskell. Beginner's Track The first section introduces the reader to the very basics of the language and some of the more frequently used libraries.
Advanced Track This section introduces wider functional programming concepts such as different data structures and type theory. It also covers more practical topics like concurrency.
Haskell in Practice: This section covers the more day-to-day issues of working with Haskell, issues such as making use of the standard library, building graphical interfaces or working with databases. Topics cover:
The book is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported license. |