I guess this could go to `lang/type`.