/books/effective-haskell
Active Threads This:
Latest Threads About This Book
@RebeccaSkinner
Both module statements in the code examples on pp. xvii and xviii in the Introduction (“Following Along with Example Cod...
New
@RebeccaSkinner
On page 198, when phantom types are introduced, when listing other changes to the code example at hand, also this necess...
New
@RebeccaSkinner
The book seems to be missing an import statement like
λ import HaskellBook.Examples.Introduction.CreatingModules (Name ...
New
the (<>) operator would get passed to the function show instead of
the string we get back when we say show 1.
I think it should ...
New
Missing out an i in associativity — associatvity.
New
@RebeccaSkinner
On p.61 in Chapter 2, the following is described as finding “the sum of the first ten odd numbers”:
λ (foldr (+) 0 . fi...
New
Title: Effective Haskell - Kindle Edition
Chapter: 1 Section: Precedence, Operators, and Fixity
In the first expression, ((((((add add)...
New
@RebeccaSkinner
Currently, it is:
sumOfUniques n = foldr (add n) (additiveIdentity n) . unique n
It should be:
sumOfUniques n = ...
New
@RebeccaSkinner
At the bottom of page 31 when let is added to the example greeting I cannot get the example to work. I’ve tried rechecki...
New
Effective Haskell:Chapter 13 (B9 - PDF version) - infinite loop when running the ClassyArchiver code
Refer to pages 508-511
I get an infinite loop when running the original parseArchive function, after adding a variable called "arc...
New
Most Active This Week
Most Active This Month
Most Active This Year
Title: Effective Haskell - Kindle Edition
Chapter: 1 Section: Precedence, Operators, and Fixity
In the first expression, ((((((add add)...
New
@RebeccaSkinner
Currently, it is:
sumOfUniques n = foldr (add n) (additiveIdentity n) . unique n
It should be:
sumOfUniques n = ...
New
@RebeccaSkinner
On p.61 in Chapter 2, the following is described as finding “the sum of the first ten odd numbers”:
λ (foldr (+) 0 . fi...
New
Missing out an i in associativity — associatvity.
New
the (<>) operator would get passed to the function show instead of
the string we get back when we say show 1.
I think it should ...
New
@RebeccaSkinner
On page 198, when phantom types are introduced, when listing other changes to the code example at hand, also this necess...
New
@RebeccaSkinner
The book seems to be missing an import statement like
λ import HaskellBook.Examples.Introduction.CreatingModules (Name ...
New
@RebeccaSkinner
Both module statements in the code examples on pp. xvii and xviii in the Introduction (“Following Along with Example Cod...
New
Most Active Last Three Years
Author Spotlight: Rebecca Skinner (@RebeccaSkinner)
Welcome to our latest author spotlight, where we sit down with Rebecca Skinner, a...
New
Build efficient applications that exploit the unique benefits of a pure functional language, learning from an engineer who uses Haskell t...
New
Title: Effective Haskell - Example doesn’t work (page 8)
Middle of page 8 says: "Create a new Main.hs and copy the example below to...
New
In toCsv (ePub p 157, dropLeadingComma will leave a leading space. In the case statement, the first case is ‘,’:s’ → s’ and it should be ...
New
@RebeccaSkinner
Thanks you for this beautiful book.
Chapter 8 - p.317 3rd paragraph from the bottom
If you build your application and ...
New
“Much of this {difficult~>difficulty} is due to the complexity inherent in modern systems. ”
“Today, software needs to do more things...
New
At the beginning of the Composing Functions subsection in Chapter 1 it says: “You’ve already done this kind of implicit function composit...
New
Functions that accept arguments in any order are called “commutative”, not “associative”. Note that this is mentioned twice in the same p...
New
At the end of “Depending on Other Files” (ePub p 153), it says “In the next section you’ll learn the basics of Haskell’s syntax and gramm...
New
To be more concise and minimize the number of threads, I grouped the suggested corrections into one post.
A few notes on how I structure...
New
In Chapter 8, (Viewing Text One Page at a Time), when defining groupsOf, it says we should use a polymorphic type in the type signature, ...
New
The addPeano function switches the arguments in the recursive call. The implementation should be:
addPeano Z b = b
addPeano (S a) b = a...
New
To be more concise and minimize the number of threads, I grouped the suggested corrections into one post.
A few notes on how I structure...
New
In the “Functions as Data Types” section of Chapter 4 (ePub p 113), the takeDigits parser is introduced as “we could take some digits fro...
New
In the “Filtering List Elements” section, the party budget function is first called “foodBudget” and all subsequent reference are “partyB...
New
Most Active Over Three Years
On page 19, the last line of the guard clause code snippet:
| otherwise = “that’s an unfathomalbly big number”
has “unfathomably” missp...
New
“You’ll notice that in all of the examples so far, we’ve created lists that only contain numbers” - this is incorrect, one of the first e...
New
Title: Effective Haskell - lambda example would help (pages 8-9)
At the bottom of page 8 and the top of page 9 lambdas are described. I ...
New
@RebeccaSkinner,
page 141. calculator.
I suggest you explain a little more about why you introduced the Left and Right types in the Cal...
New
Effective Haskell Chapter 8
getTerminalSize (Epub p 243) used pure in the case statement and return in the definition of tputScreenDime...
New
@RebeccaSkinner
In Effective Haskell Chapter 11 (~ p 410 in ePub), when creating the Encode and Decode instances for String, pack and un...
New
Defining Functor for Either Section (p. 270 ff ePub):
The discussion of the kind error seems as thought kinds have not been introduced ...
New
The discussion of why 1 'div' 0 isn’t evaluated in lazyIODemo (ePub p 214) could be expanded. The rationale (don’t want to read a...
New
In the first complete version of runHCat (ePub p. 201), that reads a file and prints it to the screen, LambdaCase is used. First, the pro...
New
@RebeccaSkinner,
Allright, so I have put all of the example code for Calculator in chapter 4 on page ~140 in a file and when loading it ...
New
It may be too much nitpicking, but you could consider describing the context in which the two language extensions (OverloadedStrings and ...
New
@RebeccaSkinner
In beta 9.0
A small typo near the bottom of p83:
“but it there are some extra moving parts”
Probably"it" sh...
New
The definition of BinaryTree doesn’t allow for an empty tree (the minimum definition is a Leaf with one element) or two elements (next up...
New
At the end of the subsection on records, it might be nice to mention the practice of defining a default value for a complex record (e.g.,...
New
In the example:
return "4" >>= ioRead
You could consider adding an explanation, like “Remember that return "4"...
New
Book Info
Publisher:
Pragmatic Bookshelf
Are you this book's author? To be notified of all posts made about it, sign up an account then click here, then select 'watching' from the bell icon in the top right corner.
Get money off!
The Pragmatic Bookshelf
35% off any eBook
Simply use coupon code "devtalk.com" at checkout. See full details here.