data TyCon = TyCon {

   tyConHash    :: {-# UNPACK #-} !Fingerprint, -- ^ @since 4.8.0.0

   tyConPackage :: String, -- ^ @since 4.5.0.0

   tyConModule  :: String, -- ^ @since 4.5.0.0

   tyConName    :: String  -- ^ @since 4.5.0.0

}

 

Friends,

Is tyConHash a good name here?  Wouldn’t tyConFingerprint be better? 

·         Hash functions usually yield a Int.

·         tyConFingerprint :: TyCon -> Fingerprint makes the name match the type.

·         If we had fingerprintHash:: Fingerprint -> Int, then we might want
tyConHash :: TyCon -> Int
tyConHash = fingerprintHash . tyConFingerpring

 

This is new in 7.10, so we could fix it now with no trouble.

Simon