Generalization of the Law: As the first actual parameter of a generic function call inside a method M use only objects which are instances of classes associated with the following classes: argument classes and the instance variable classes (slot classes) of the first d argument classes (d some constant >0 fixed for M). Global objects and objects created by the method are viewed as arguments. Discussion: This generalized version of the Law forces the programmer to think about many more types then the original version. The original version of the Law is a special case of the generalized version: d = 1 in the original case. Conclusion: (Arthur and Karl): d > 1: undermines the Law. Specialization of the Law: As the first c actual parameters of a generic function call inside a method M (c some constant >0 fixed for the generic function) use only objects which are instances of classes associated with the following classes: argument classes and the instance variable classes (slot classes) of the first argument class. Discussion: This version is more restrictive. In the original version c = 1. Relationship between finding methods and the Law. (g a b) The Law restricts the number of methods you have to keep in mind. Conclusion: c > 1 is probably too restrictive although it would restrict the number of methods to bew kept in mind even further.