/books/effective-haskell
Active Threads This:
Most Active This Week
Most Active This Month
Most Active This Year
@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
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
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
Most Active Over Three Years
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
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
@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
In the error handling section in Chapter 8:
In the first refactor (ePub p 202), it says “we’ll start by adding a second helper function...
New
The function I am testing is handleNums on page 68.
It returns this error message:
λ: :reload
[1 of 1] Compiling Main ...
New
If you’d like to make your prompt look like the one in the examples, you can type: :set prompt λ " when you first start ghci. You ca...
New
Please use the following format for the title of this thread (then simply delete/replace this text with the content for the thread):
Tit...
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
There’s a small typo in ch2 (B9.0), half way through the section Destructuring Values With Pattern Matching in the sentence:
As an exam...
New
The “identity (left)” law is listed as
return a >>= m = m s
but should probably be
return a >>= m = m a
Otherwise the...
New
pg 180: you’ll frequently run across code in the wild that’s
impelemented → … implemented
pg 181 : collect a set of functions for you t...
New
In the section “Reading Type Errors - p 72 ePub”, the second example is initially “(True, False) :: (Bool, Int)” but when walking through...
New
In the second definition of handleArgs (ePub p 230 and 231) the non-empty case condition is (arg:args) -> Right args but it should be ...
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.