Why is `type` a field? VarcharType has no subclasses and also contains no state.