 
            Ah yes. That is, strictly speaking not code.
I suppose it could count as breakage also, but I think it is far less
likely to cause confusion though as they're clearly asking about
implementation and getting an answer that its changed.
On Tue, Feb 3, 2015 at 2:41 PM, Erik Hesselink 
On Tue, Feb 3, 2015 at 8:32 PM, davean
wrote: On Tue, Feb 3, 2015 at 2:20 PM, Erik Hesselink
wrote: 2. Breakage of existing tutorials/documentation
I was just wondering which of these you were alluding to. Turns out it's all of them :) I'm surprised you mention breakage of code, since in my experience most of the breakage in GHC 7.10 I've seen in my own packages and the Stackage builds is due to other factors: the Applicative/Monad changes, time 1.5, etc. It would be interesting (but time consuming) to gather some statistics on this. The breakage of tutorials is unfortunate, yes.
So how bad is the breakage of tutorial code really? Looking around almost all of it has a full top level type which makes it still work. I've only looked for a few minutes but my first impression is that not much breaks with this. Is this just a theory or have people actually determined that tutorial code breaks?
(Actually, I've found plenty of broken tutorial code, but it wasn't due to anything in prelude. Our standard library churn seems much worse on tutorials I've looked at then this seems to be.)
I think the 'breakage' is mostly used as mentioning things that work on lists, while they now work on Foldable/Traversables. For example, LYAH mentions "length takes a list and returns its length, obviously.", which isn't true anymore in the strictest sense, it takes any Foldable. However, you could argue that this text is just specialization, and that it's still true. There seem to be no things that are generalized in the section about types, and soon after type classes are already introduced. Real World Haskell is slightly more "broken", for example, it lists:
ghci> :type null null :: [a] -> Bool
Which isn't true anymore, it would now give "Foldable t => t a -> Bool".
Regards,
Erik
P.S. You didn't send your message to haskell-cafe. Feel free to forward it including this reply if you want.