Learn You a Haskell for Great Good!: A Beginner's Guide

( 2 )

Overview

It's all in the name: Learn You a Haskell for Great Good! is a hilarious, 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.

You'll start with the kid stuff: basic syntax, recursion, types and type classes. Then once you've got the basics down, the real black belt master-class begins: ...

See more details below
Paperback
$30.52
BN.com price
(Save 32%)$44.95 List Price

Pick Up In Store

Reserve and pick up in 60 minutes at your local store

Other sellers (Paperback)
  • All (27) from $17.02   
  • New (16) from $17.94   
  • Used (11) from $17.02   
Learn You a Haskell for Great Good!: A Beginner's Guide

Available on NOOK devices and apps  
  • NOOK Devices
  • Samsung Galaxy Tab 4 NOOK
  • NOOK HD/HD+ Tablet
  • NOOK
  • NOOK Color
  • NOOK Tablet
  • Tablet/Phone
  • NOOK for Windows 8 Tablet
  • NOOK for iOS
  • NOOK for Android
  • NOOK Kids for iPad
  • PC/Mac
  • NOOK for Windows 8
  • NOOK for PC
  • NOOK for Mac
  • NOOK for Web

Want a NOOK? Explore Now

NOOK Book (eBook)
$19.99
BN.com price
(Save 44%)$35.95 List Price

Overview

It's all in the name: Learn You a Haskell for Great Good! is a hilarious, 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.

You'll start with the kid stuff: basic syntax, recursion, types and type classes. Then once you've got the basics down, the real black belt master-class begins: you'll learn to use applicative functors, monads, zippers, and all the other mythical Haskell constructs you've only read about in storybooks.

As you work your way through the author's imaginative (and occasionally insane) examples, you'll learn to:

  • Laugh in the face of side effects as you wield purely functional programming techniques
  • Use the magic of Haskell's "laziness" to play with infinite sets of data
  • Organize your programs by creating your own types, type classes, and modules
  • Use Haskell's elegant input/output system to share the genius of your programs with the outside world

Short of eating the author's brain, you will not find a better way to learn this powerful language than reading Learn You a Haskell for Great Good!

Read More Show Less

Product Details

  • ISBN-13: 9781593272838
  • Publisher: No Starch Press San Francisco, CA
  • Publication date: 4/18/2011
  • Edition number: 1
  • Pages: 400
  • Sales rank: 302,630
  • Product dimensions: 6.90 (w) x 9.20 (h) x 1.20 (d)

Meet the Author

Miran Lipovaca is a computer science student in Ljubljana, Slovenia. In addition to his passion for Haskell, he enjoys boxing, playing bass guitar, and, of course, drawing. He has a fascination with dancing skeletons and the number 71, and when he walks through automatic doors he pretends that he's actually opening them with his mind.

Read More Show Less

Table of Contents

Introduction;
So, What's Haskell?;
What You Need to Dive In;
Acknowledgments;
Chapter 1: Starting Out;
1.1 Calling Functions;
1.2 Baby's First Functions;
1.3 An Intro to Lists;
1.4 Texas Ranges;
1.5 I'm a List Comprehension;
1.6 Tuples;
Chapter 2: Believe the Type;
2.1 Explicit Type Declaration;
2.2 Common Haskell Types;
2.3 Type Variables;
2.4 Type Classes 101;
Chapter 3: Syntax in Functions;
3.1 Pattern Matching;
3.2 Guards, Guards!;
3.3 where?!;
3.4 let It Be;
3.5 case Expressions;
Chapter 4: Hello Recursion!;
4.1 Maximum Awesome;
4.2 A Few More Recursive Functions;
4.3 Quick, Sort!;
4.4 Thinking Recursively;
Chapter 5: Higher-Order Functions;
5.1 Curried Functions;
5.2 Some Higher-Orderism Is in Order;
5.3 The Functional Programmer's Toolbox;
5.4 Lambdas;
5.5 I Fold You So;
5.6 Function Application with $;
5.7 Function Composition;
Chapter 6: Modules;
6.1 Importing Modules;
6.2 Solving Problems with Module Functions;
6.3 Mapping Keys to Values;
6.4 Making Our Own Modules;
Chapter 7: Making Our Own Types and Type Classes;
7.1 Defining a New Data Type;
7.2 Shaping Up;
7.3 Record Syntax;
7.4 Type Parameters;
7.5 Derived Instances;
7.6 Type Synonyms;
7.7 Recursive Data Structures;
7.8 Type Classes 102;
7.9 A Yes-No Type Class;
7.10 The Functor Type Class;
7.11 Kinds and Some Type-Foo;
Chapter 8: Input and Output;
8.1 Separating the Pure from the Impure;
8.2 Hello, World!;
8.3 Gluing I/O Actions Together;
8.4 Some Useful I/O Functions;
8.5 I/O Action Review;
Chapter 9: More Input and More Output;
9.1 Files and Streams;
9.2 Reading and Writing Files;
9.3 To-Do Lists;
9.4 Command-Line Arguments;
9.5 More Fun with To-Do Lists;
9.6 Randomness;
9.7 Bytestrings;
Chapter 10: Functionally Solving Problems;
10.1 Reverse Polish Notation Calculator;
10.2 Heathrow to London;
Chapter 11: Applicative Functors;
11.1 Functors Redux;
11.2 Functor Laws;
11.3 Using Applicative Functors;
11.4 Useful Functions for Applicatives;
Chapter 12: Monoids;
12.1 Wrapping an Existing Type into a New Type;
12.2 About Those Monoids;
12.3 Meet Some Monoids;
12.4 Folding with Monoids;
Chapter 13: A Fistful of Monads;
13.1 Upgrading Our Applicative Functors;
13.2 Getting Your Feet Wet with Maybe;
13.3 The Monad Type Class;
13.4 Walk the Line;
13.5 do Notation;
13.6 The List Monad;
13.7 Monad Laws;
Chapter 14: For a Few Monads More;
14.1 Writer? I Hardly Knew Her!;
14.2 Reader? Ugh, Not This Joke Again;
14.3 Tasteful Stateful Computations;
14.4 Error Error on the Wall;
14.5 Some Useful Monadic Functions;
14.6 Making a Safe RPN Calculator;
14.7 Composing Monadic Functions;
14.8 Making Monads;
Chapter 15: Zippers;
15.1 Taking a Walk;
15.2 Focusing on Lists;
15.3 A Very Simple Filesystem;
15.4 Watch Your Step;
15.5 Thanks for Reading!;
Colophon;
Updates;

Read More Show Less

Customer Reviews

Average Rating 4.5
( 2 )
Rating Distribution

5 Star

(1)

4 Star

(1)

3 Star

(0)

2 Star

(0)

1 Star

(0)

Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation

Reminder:

  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

 
Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously
Sort by: Showing all of 2 Customer Reviews
  • Posted September 15, 2012

    This book is written in a funny and very smart way. Thanks to th

    This book is written in a funny and very smart way. Thanks to the special BN format I can read this on my nook. An online and free content of this book is out there on the book's website. Learning Haskell is not an easy task but with this book everyone can break through the hard shell of this wonderful language. Once inside, the programmer is making one step further towards wonders of human evolution. Studying this book is just the beginning of something much greater than everyone can imagine. I dare you to read and study this book or any other Haskell book out there.

    Was this review helpful? Yes  No   Report this review
  • Anonymous

    Posted July 31, 2012

    No text was provided for this review.

Sort by: Showing all of 2 Customer Reviews

If you find inappropriate content, please report it to Barnes & Noble
Why is this product inappropriate?
Comments (optional)