The problem is not as acute as it might first appear, because many popular procedures, such as initialize, new, size, and at: and at:put: (used for accessing indexed data structures), have general, intuitive, well understood meanings. It is not necessary to know their implementations to have a sense of what they do. On the other hand, other popular procedures, such as displayOn:at:clippingBox:rule:mask:, are complex and obscure. Inferring the generic meaning of such an operation from a few instances of use is difficult. Worse, if one name is shared by different generic operations, the reader is encouraged to infer similarities that do not necessarily exist."
|