# Real World Haskell Revived

**URL:** <https://discourse.haskell.org/t/real-world-haskell-revived/14461>\
**Category:** Links\
**Created:** [July 26, 2026, 4:05pm UTC](https://discourse.haskell.org/t/real-world-haskell-revived/14461 "2026-07-26T16:05:35Z")\
**Posts on this page:** 9\
**Page:** 2

<div class="post-metadata">

**Author:** ![jaror](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/jaror/32/3271_2.png) [@jaror](https://discourse.haskell.org/u/jaror)\
**Post date:** [July 31, 2026, 10:39am UTC](https://discourse.haskell.org/t/real-world-haskell-revived/14461/21 "2026-07-31T10:39:03Z")

</div>

Not really. I’m planning to work on this in my free time whenever I feel like it. In broad strokes, the first goal is to make sure that the simple code examples work on modern GHC versions (9.6+). Some later chapters dive into some specific libraries like `gtk2hs` which may take more time to fix. The story also needs to be adapted in some places, for example it explains `head` and `tail` on lists very early on which nowadays are considered to be less idiomatic.

If you have specific suggestions for what to focus on, I’d love to hear it.

---

<div class="post-metadata">

**Author:** ![qbane](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/qbane/32/5683_2.png) [@qbane](https://discourse.haskell.org/u/qbane)\
**Post date:** [July 31, 2026, 7:00pm UTC](https://discourse.haskell.org/t/real-world-haskell-revived/14461/22 "2026-07-31T19:00:09Z")

</div>

Earlier this year I discovered that the online version of that book [book.realworldhaskell.org/](http://book.realworldhaskell.org/) just straight up vanished. I learned a lot from the sheer amount of useful comments in there. It would be a nice plus if we can also revive the comments.

Archive on The Wayback Machine: [ChapterÂ&nbsp;1.Â&nbsp;Getting Started](https://web.archive.org/web/20251231172343/https://book.realworldhaskell.org/read/getting-started.html)

---

<div class="post-metadata">

**Author:** ![jaror](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/jaror/32/3271_2.png) [@jaror](https://discourse.haskell.org/u/jaror)\
**Post date:** [July 31, 2026, 7:39pm UTC](https://discourse.haskell.org/t/real-world-haskell-revived/14461/23 "2026-07-31T19:39:28Z")

</div>

Thanks for pointing that out and linking to the Wayback Machine! Integrating those old comments will be a challenge because we’d have to somehow scrape them all, check if they haven’t aged badly, link them to the current document, and properly integrate them into the markdown in an unobtrusive way (probably some for of details block, but that can still be a bit obtrusive if it is after every paragraph).

In short, I agree it would be a nice plus but it is not a priority in the short term.

---

<div class="post-metadata">

**Author:** ![slow-dive](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/slow-dive/32/5585_2.png) [@slow-dive](https://discourse.haskell.org/u/slow-dive)\
**Post date:** [July 31, 2026, 8:02pm UTC](https://discourse.haskell.org/t/real-world-haskell-revived/14461/24 "2026-07-31T20:02:25Z")

</div>

I agree it’s not easy to integrate them, but I also found them very useful from time to time. I think someone writing such a book sometimes cannot get into the headspace of someone hearing about these concepts for the first time, so they can’t always anticipate the questions that will occur - but the other readers who were struggling along would ask those kinds of questions.

---

<div class="post-metadata">

**Author:** ![dawkrish](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/dawkrish/32/4746_2.png) [@dawkrish](https://discourse.haskell.org/u/dawkrish)\
**Post date:** [August 8, 2026, 3:55pm UTC](https://discourse.haskell.org/t/real-world-haskell-revived/14461/26 "2026-08-08T15:55:01Z")

</div>

Sorry for late reply, notif got missed

As the title suggests its supposed to be “Real World” 2 things I highly appreciate in a resource are

1. Exercises/Assignemtns/Project-Labs the way its in CIS194 or MIT 6.824 (Designing Distributed Systems)
2. Suggested Modern Readings.

Thanks.

---

<div class="post-metadata">

**Author:** ![jaror](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/jaror/32/3271_2.png) [@jaror](https://discourse.haskell.org/u/jaror)\
**Post date:** [August 16, 2026, 2:39pm UTC](https://discourse.haskell.org/t/real-world-haskell-revived/14461/27 "2026-08-16T14:39:16Z")

</div>

Thanks to @exaexa, we now have a rendered HTML version hosted by Codeberg pages:

> **[Table of contents | Real World Haskell](https://jaror.codeberg.page/real-world-haskell/)**

---

<div class="post-metadata">

**Author:** ![dawkrish](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/dawkrish/32/4746_2.png) [@dawkrish](https://discourse.haskell.org/u/dawkrish)\
**Post date:** [August 23, 2026, 3:35pm UTC](https://discourse.haskell.org/t/real-world-haskell-revived/14461/28 "2026-08-23T15:35:03Z")

</div>

Hey, is there a way we can see the diff for a particular chapter in the original edition & the revised edition ?

---

<div class="post-metadata">

**Author:** ![jaror](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/jaror/32/3271_2.png) [@jaror](https://discourse.haskell.org/u/jaror)\
**Post date:** [August 23, 2026, 3:42pm UTC](https://discourse.haskell.org/t/real-world-haskell-revived/14461/29 "2026-08-23T15:42:10Z")

</div>

You can look at the file history on codeberg. I think the original commits by Tae Sandoval are close to the original book, but it could be that not all changes are in the git history.

---

<div class="post-metadata">

**Author:** ![exaexa](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/exaexa/32/4753_2.png) [@exaexa](https://discourse.haskell.org/u/exaexa)\
**Post date:** [August 27, 2026, 1:21pm UTC](https://discourse.haskell.org/t/real-world-haskell-revived/14461/30 "2026-08-27T13:21:38Z")

</div>

@dawkrish if you want to _scan_ for various tiny changes that might not be in git, I’d recommend taking the old HTML from webarchive, converting it to plaintext with pandoc, and comparing to plaintext conversion of what’s currently in codeberg repo. (word-diff tools may come in quite handy.)

I should probably do the same at some point, to compare the RWHR root commit to the actual book and see if there’s surprises

[Previous page](https://discourse.haskell.org/t/real-world-haskell-revived/14461.md?page=1)
