12. A method implemented by one or more computing devices, the method comprising: receiving a request to instantiate an interface; obtaining a parameterized interface definition for the interface that describes a list of parameters of the interface; and generating an interface identifier for the interface, the interface identifier generated based at least in part on the list of parameters and by employing an algorithm that is operable such that: when a parameterized type is instantiated twice with matching arguments, both instantiations are assigned a matching interface and a matching interface identifier; if two different parameterized types are instantiated with matching arguments, it is statistically unlikely that both instantiations are assigned matching interface identifiers; or if a parameterized type is instantiated twice with different arguments, it is statistically unlikely that both instantiations are assigned matching interface identifiers.
12. A method implemented by one or more computing devices, the method comprising: receiving a request to instantiate an interface; obtaining a parameterized interface definition for the interface that describes a list of parameters of the interface; and generating an interface identifier for the interface, the interface identifier generated based at least in part on the list of parameters and by employing an algorithm that is operable such that: when a parameterized type is instantiated twice with matching arguments, both instantiations are assigned a matching interface and a matching interface identifier; if two different parameterized types are instantiated with matching arguments, it is statistically unlikely that both instantiations are assigned matching interface identifiers; or if a parameterized type is instantiated twice with different arguments, it is statistically unlikely that both instantiations are assigned matching interface identifiers. 14. A method as described in claim 12 , wherein the interface identifier is generated to automatically follow revision rules such that when a revision is made to the interface the interface identifier is revised automatically.