digikar99/adhoc-polymorphic-functions

(Common Lisp) {macro, structures and hash-table}-based wrappers around normal functions to allow for dispatching on types instead of classes.