Should there be `heqNat`, `heqSymbol` and `heqChar`?
In 8529fbba @treeowl added sameTypeRep
to make eqTypeRep
to inline,
so Maybe
wrapper would go away.
Should similar (not exported) "workers"
heqNat :: SNat a -> SNat b -> Bool
heqChar :: SChar a -> SChar b -> Bool
heqSymbol :: SSymbol a -> SSymbol b -> Bool
be added for Nat
, Char
and Symbol
singletons?
Does it matter? I don't know how to assess this, but it feels that these should be treated uniformly.
TypeRep
is a lot larger singleton than the Nat, Char and Symbol ones, so it may be optimize differently.
OTOH having as similar implementation for all four would make sense too just from stylistic pov.
heq
prefix is probably not the best one as it clashes with heqT
, and even h
stands for heterogeneous in both cases, it's different.