For example, it looks nice in Common Lisp: https://people.eecs.berkeley.edu/~fateman/papers/overload-AD...