A humble SCT rewrite in Haskell