CART

(0) items

Real World Haskell : Code You Can Believe In,9780596514983

Real World Haskell : Code You Can Believe In

by ; ;
Edition:
1st
ISBN13:

9780596514983

ISBN10:
0596514980
Format:
Paperback
Pub. Date:
12/5/2008
Publisher(s):
Oreilly & Associates Inc
List Price: $49.99

Buy New Textbook

In Stock Usually Ships in 24-48 Hours
N9780596514983
$48.74

eTextbook


 
Duration
Price
$47.99

Rent Textbook

We're Sorry
Sold Out

Used Textbook

We're Sorry
Sold Out

More New and Used
from Private Sellers
Starting at $25.67
See Prices

Questions About This Book?

What version or edition is this?
This is the 1st edition with a publication date of 12/5/2008.
What is included with this book?
  • The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any CDs, lab manuals, study guides, etc.

Summary

This is the book for software developers who want to learn Haskell and use it to do real work. There are a number of books on Haskell out there, but they're all either textbooks or academic books; the textbooks use Pascal as a language for teaching computer science. There isn't anything out there that shows you how to use Haskell to write software that's actually useful. There's been a significant upsurge of interest in Haskell and other functional programming languages. It's not clear what's driving this interest, but one of the factors may be the importance of concurrent programming and new computer architectures. The book introduces readers to the language, but it's a fairly fast and brief tutorial, rather than a textbook. It pays special attention to real- world issues like I/O, performance, dealing with external data, databases, concurrency, and web applications.

Author Biography

Bryan O'Sullivan is an Irish hacker and writer who likes distributed systems, open source software, and programming languages. He was a member of the initial design team for the Jini network service architecture (subsequently open sourced as Apache River). He has made significant contributions to, and written a book about, the popular Mercurial revision control system. He lives in San Francisco with his wife and sons. Whenever he can, he runs off to climb rocks.

John Goerzen is an American hacker and author. He has written a number of real-world Haskell libraries and applications, including the HDBC database interface, the ConfigFile configuration file interface, a podcast downloader, and various other libraries relating to networks, parsing, logging, and POSIX code. John has been a developer for the Debian GNU/Linux operating system project for over 10 years and maintains numerous Haskell libraries and code for Debian. He also served as President of Software in the Public Interest, Inc., the legal parent organization of Debian. John lives in rural Kansas with his wife and son, where he enjoys photography and geocaching.

Don Stewart is an Australian hacker based in Portland, Oregon. Don has been involved in a diverse range of Haskell projects, including practical libraries, such as Data.ByteString and Data.Binary, as well as applying the Haskell philosophy to real-world applications including compilers, linkers, text editors, network servers, and systems software. His recent work has focused on optimizing Haskell for high-performance scenarios, using techniques from term rewriting.

Table of Contents

Dedication
Preface
Have We Got a Deal for You!
What to Expect from This Book
What to Expect from Haskell
A Brief Sketch of Haskell's History
Helpful Resources
Conventions Used in This Book
Using Code Examples
Safari(r) Books Online
How to Contact Us
Acknowledgments
Getting Started
Your Haskell Environment
Getting Started with ghci, the Interpreter
Basic Interaction: Using ghci as a Calculator
Command-Line Editing in ghci
Lists
Strings and Characters
First Steps with Types
A Simple Program
Types and Functions
Why Care About Types?
Haskell's Type System
What to Expect from the Type System
Some Common Basic Types
Function Application
Useful Composite Data Types: Lists and Tuples
Functions over Lists and Tuples
Function Types and Purity
Haskell Source Files, and Writing Simple Functions
Understanding Evaluation by Example
Polymorphism in Haskell
The Type of a Function of More Than One Argument
Why the Fuss over Purity?
Conclusion
Defining Types, Streamlining Functions
Defining a New Data Type
Type Synonyms
Algebraic Data Types
Pattern Matching
Record Syntax
Parameterized Types
Recursive Types
Reporting Errors
Introducing Local Variables
The Offside Rule and Whitespace in an Expression
The case Expression
Common Beginner Mistakes with Patterns
Conditional Evaluation with Guards
Functional Programming
Thinking in Haskell
A Simple Command-Line Framework
Warming Up: Portably Splitting Lines of Text
Infix Functions
Working with Lists
How to Think About Loops
Anonymous (lambda) Functions
Partial Function Application and Currying
As-patterns
Code Reuse Through Composition
Tips for Writing Readable Code
Space Leaks and Strict Evaluation
Writing a Library: Working with JSON Data
A Whirlwind Tour of JSON
Representing JSON Data in Haskell
The Anatomy of a Haskell Module
Compiling Haskell Source
Generating a Haskell Program and Importing Modules
Printing JSON Data
Type Inference Is a Double-Edged Sword
A More General Look at Rendering
Developing Haskell Code Without Going Nuts
Pretty Printing a String
Arrays and Objects, and the Module Header
Table of Contents provided by Publisher. All Rights Reserved.


Please wait while the item is added to your cart...