further update to the haskell source