The whole point of multimethods is open extension not pattern matching. Many programming languages let you dispatch only on the first argument - the instance. multimethods generalize this.
So the use-case is the same use-case as defining classes, except we have a lot more flexibility.
Comments
The whole point of multimethods is open extension not pattern matching. Many programming languages let you dispatch only on the first argument - the instance. multimethods generalize this.
So the use-case is the same use-case as defining classes, except we have a lot more flexibility.