Change naming conventions for compiler-generated dictionaries and type functions
authorsimonpj@microsoft.com <unknown>
Wed, 29 Oct 2008 14:08:58 +0000 (14:08 +0000)
committersimonpj@microsoft.com <unknown>
Wed, 29 Oct 2008 14:08:58 +0000 (14:08 +0000)
commit3bf13c8815401d1a4c1173824b26bfab13fbf406
tree7d18be94155ae1a0aba75e07030402d0c5718716
parenta854a0b9cefefe8cc8e96125ff13489bf96bf5a6
Change naming conventions for compiler-generated dictionaries and type functions

Up to now, the data constructor dictionary for class C as been called
":DC". But there is no reason for the colon to be at the front; indeed
it confuses the (simple-minded) pretty-printer for types.  So this
patch changes it to be "D:C".  This makes Core a lot easier to read.
Having a colon in the middle ensures that it can't clash with a user-written
data type.

Similarly I changed

  T:C     Data type corresponding a class dictionary (was :TC)
  D:C    Data constructor for class dictionary (was :DC)

  NTCo:T   Coercion mapping from a newtype T to its representation type
(was :CoT)

  TFCo:R   Coercion mapping from a data family to its respresentation type R
(was :CoFR)

  Rn:T     The n'th respresentation data type for a data type T
(was :RnT)

Do not merge to 6.10.

HEADS-UP: you'll need to recompile libraries from scratch.

ROMAN: you could do the same for OccName.mkVectTyConOcc etc, if you wanted.
compiler/basicTypes/OccName.lhs