https://en.wikipedia.org/wiki/Polymorphism_(computer_science)
https://en.wikipedia.org/wiki/Ad_hoc_polymorphism
https://wiki.haskell.org/Polymorphism
https://javapapers.com/core-java/java-polymorphism/
https://scs.senecac.on.ca/~oop244/pages/content/adhoc.html
http://cn.bing.com/images/search?q=Ad+hoc+polymorphism&FORM=HDRSC2
http://www.cs.kent.edu/~durand/CS43101Fall2004/DT-TypeSystems.html
https://scs.senecac.on.ca/~oop244/pages/content/adhoc.html
http://www.cs.kent.edu/~durand/CS43101Fall2004/DT-TypeSystems.html