多重ディスパッチ
Common Lispのように多重ディスパッチをする言語では、コードは次のようになる。
このように、引数のデータ型を調べるコードを、引数部分に完全に組み込むことができている。
多重ディスパッチがあると、クラスがあって、そこにメソッドが属しているという考え方はあまり意味を持たない。collide-with という名前のメソッドは、引数ごとにそれぞれ2つのクラスと関連付けられている「普通の関数呼び出し」に過ぎなくなる。結果として、メソッドを呼び出す際の特殊な構文を必要としない。