> It's already possible to write > asTypeOf :: > a {- ^ the input value to be passed through -} > -> a {- ^ the value is ignored, but the type is unified with the first parameter -} > -> a {- ^ the value of the first parameter -} Nice. Still using "first parameter" though ;-)