Add more haskell implementations