In some domains of programming it’s common to want to write a data structure or algorithm that can work with elements of many different types, such as a generic list or a sorting algorithm that only needs a comparison function.
W. Taha, and T. Sheard. Proceedings of the 1997 ACM SIGPLAN Symposium on Partial Evaluation and Semantics-based Program Manipulation, page 203--217. ACM, (1997)
S. Marr, C. Seaton, and S. Ducasse. Proceedings of the 36th ACM SIGPLAN Conference on Programming Language Design and Implementation, page 545--554. ACM, (June 2015)(acceptance rate 19%).
J. McAffer. ECOOP’95 — Object-Oriented Programming, 9th European Conference, Åarhus, Denmark, August 7–11, 1995, volume 952 of Lecture Notes in Computer Science, Springer Berlin Heidelberg, (1995)
S. Marr, E. Gonzalez Boix, and H. Mössenböck. Proceedings of the 9th Arbeitstagung Programmiersprachen, volume 1559 of ATPS'16, page 91--95. CEUR-WS, (Feb 25, 2016)
G. Chari, D. Garbervetsky, and S. Marr. Proceedings of the 11th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems, page 5. (Jun 19, 2017)