improve various

Haskell