a little cosmetic change and also adding haskell influence and advantage