Polymorphism
Definitions
associating an operation name with more than one algorithm
in Clojure for the Brave and True. It continues:
For example, the algorithm for performing
conj
on a list is different from the one for vectors, but we unify them under the same name to indicate that they implement the same concept…