Updated haskell reader functions