1 2 3 4 5 6 7 8 9 10 11 12 13
{-# LANGUAGE TypeFamilies #-} module Overlap9 where type family F a where F Int = Bool F a = Int g :: Show a => a -> F a g x = length (show x)