Improve haskell support