In software design, we can say a class is a polymorphic class. If a class is not a polymorphic class and I want to make it one, do I say I've polymorphized the class?
-
2I suppose the verb would come from how you went about making it become a polymorphic class. i.e Did you subclass it (it was subclassed) or did you move up some methods into a parent class i.e. it was abstracted. Or was an interface implemented by it.– JWEnglishCommented Oct 13, 2011 at 17:50
-
1My guess here (correct me if I'm wrong grokus) is that he's talking about taking a vanilla non-polymorphic class, and rewriting its source code so that it is now polymorphic.– T.E.D.Commented Oct 13, 2011 at 17:56
-
T.E.D. was right.– grokusCommented Oct 13, 2011 at 19:39
4 Answers
Polymorph is a word (popularized by D&D and software folks) created from the some handy Greek-ish roots poly (meaning "many") and morph (meaning "change"). The idea is to indicate that the base type (aka: class) in question can be easily changed in many possible ways (generally via a derived class of some kind). It is generally used as an adjective (it modifies a noun) or an adverb (modifying a verb like is).
So back to English grammar. Often we can transform a noun to a verb with an "ize" on the end to indicate that we have somehow transformed the subject of the sentence into that other noun. For example, if I transform an array into a raster, you could say I rasterized the array.
However, its kind of awkward to do this with an adjective or adverb rather than a noun. I'm sure its done from time to time, but not ubiquitously. For example, if I paint something blue, you wouldn't likely hear someone say that I blueized that thing.
Now you could try to transform your noun into a verb just by adding a simple -ed on the end (polymorphed). However, as I think you suspected, that would be saying that you actually changed the subject itself, which isn't the point of what you want to say at all.
So I don't think you can get around the somewhat wordy, "made it polymorphic".
-
3+1. Sometimes doing something in a specific way gets verbed, such as "black up my hands", but more often the action which is performed is a sufficient verb and the way in which it is performed (or the result of that performance) is not verbed. So the code is "refactored" or "rewritten" to be polymorphic just like the car is "painted" to be blue, and not blued, or blueized. Commented Oct 13, 2011 at 19:50
-
2Rereading this after a year, and I would like to clarify one point in here. The word certianly existed before software people adopted it. I remember it as a Magic User spell in my DnD days back in the late 70's. In fact, this pre-existing use of the word "polymorph" is exactly why I think saying "polymorphed" would be wrong here. It has an existing meaning that isn't what he wanted.– T.E.D.Commented Mar 1, 2013 at 14:44
I've never needed to use the term. However, I might say:
I've refactored the class to become polymorphic.
-
1On a side note, you might be interested in The "Replace Conditional with Polymorphism" Refactoring Commented Oct 13, 2011 at 18:14
You can if you want to.
It’s not in common usage yet. A phrasing like “…made someclass
polymorphic…” is currently more common (as googling, and more specifically searching various programming language communities, confirms). However, in technical contexts, coining new terms is quite common, and not generally scoffed at; and this one is completely transparent — anyone familiar with polymorphism will understand what you mean. Also, while uncommon, it’s certainly not unknown: searching does give a fair few other examples of people using polymorphize (or polymorphise) as a verb.
So: if you like it, go for it!
Drawing knowledge from games that use this word in spells, I can assure you that
it already is a verb
in your example, you've polymorphed a class.
My first google search for the polymorph other spell. You also see close forms like "polymorphed".
-
1When a wizard polymorphs a princess into an eft, he has not turned her into a shapeshifter. She’s stuck that way. In contrast, when a coder rewrites a specific class so that it’s a generic one by making it polymorphic, that rewritten class is now a shapeshifter in its own right and able to polymorph at will. Unlike the former princess.– tchrist ♦Commented Dec 29, 2021 at 18:20
-