; https://eli.thegreenplace.net/2016/a-polyglots-guide-to-multiple-dispatch-part-3/
(defclass Person () ())
(defmethod frobnicate ((p Person) record spreadsheet)
(format t "~a ~a ~a~&" (type-of p) (type-of record) (type-of spreadsheet)))
(defclass Asteroid () ())
(defmethod frobnicate ((a Asteroid) velocity size)
; do stuff
)
; At runtime these 2 would be routed to respective methods:
(frobnicate a-person his-record big-spreadsheet)
(frobnicate an-asteroid very-fast pretty-small)
|| x = "str"
|| i = x.find("t")
Languages with Single Dispatch include JavaScript, Python, Java, C++, Swift, Elixir, Objective-C, Common Lisp, Speedie
Languages without Single Dispatch include progsbase
View all concepts with or missing a hasSingleDispatch measurement
Read more about Single Dispatch on the web: 1.