A C-Response-System rewrite in Haskell