Is there a well-known name for this?
Nov. 8th, 2015 09:38 pmFrom time to time I and colleagues find ourselves extending some function in C in a way that requires extra arguments. Often this happens in a context where it's impractical to change all the callers (for instance, because some of them are in customer code) so the extended version of the function gets a new name and the original name just calls that with some default value of the new arguments.
For instance I might go from this:
int refine_glorp(glorp *g) {
/* refinement */
}
…to this:
int refine_glorp(glorp *g) {
return refine_glorp_ex(g, 0);
}
int refine_glorp_ex(glorp *g, int arg) {
/* extended refinement, based on arg */
}
Is there a well-known name for this transformation?
A colleague who did this a week or so ago started out with 'decapitation' but changed his mind to 'recapitation' on the grounds that he was really adding a second head to the function rather than removing one. But neither of us knew if there was already a name for this.
(no subject)
Date: 2015-11-09 08:13 pm (UTC)(no subject)
Date: 2015-11-09 08:21 pm (UTC)Language makes sense, right?
(no subject)
Date: 2015-11-09 08:28 pm (UTC)(OED thinks application is ap- from ad- + p rather than the apo- version, but why would anyone let that get in the way?)