Patent ID: 8473932

Claim:
A method for relaxing artificial restrictions associated with a programming language and extend delegates associated with such programming language, without changing a runtime structure associated therewith, comprising: accessing source code written in a programming language; processing the source code written in the programming language, wherein processing includes: identifying an impermissible expression in the source code, the impermissible expression improperly defining a delegate construction according to the programming language, such that the impermissible expression is not type-safe; inserting a stub in place of the impermissible expression defining an improper delegate construction, wherein the stub provides a proper exact match in the programming language, the exact match being type-safe; and defining a constructor by a delegate class passed a specification of an object method to make the stub convert a currently impermissible expression to a currently permissible delegate construction; and moving a requirement that a check for an exact match be performed at delegate creation, such that a check for an exact match is instead made at a function call.