So long Surrogates: How we moved to UTF-8 in Haskell | Hacker News Reader