An implementation of HQ9+ in Haskell