1. A method for providing versioning support for at least one software component of an object-oriented programming language, the method operating on a computer and comprising: specifying programmer intent with regard to versioning of a first software component by assigning a keyword to said first software component, said keyword indicating how said first software component resolves an ambiguity or conflict with a second software component; wherein said ambiguity or conflict arises due to the first software component having a first method associated with a first class and the second software component having a second method associated with said first class, and wherein said first method and said second method have the same designation.