Me and a co-developer are arguing when it's wise to cast a new function rather than tweaking another one. By tweaking I mean an option or a hidden check in an existing function. The question could be rephrased: How new/different should a new function be?
In the concrete case, it's about a string comparison. Currently, the procedure is written for one list of strings. We also want to compare strings from two different lists with each other. The docs would be very similar, and code changes include just a few lines.