こんにちはこんにちは!! 清水です。今回は入門Clojureじゃなくて、Clojureのちょっと実践的な機能を紹介します。飽きたわけじゃないんだからねっ! ClojureはJVMで動いているので、Javaのクラスが使えます。実際、ClojureのデータはJavaのオブジェクトになっています。Javaではクラスを継承したりインタフェースを実装して、メソッドをオーバーライドすることにより、値によって異なる処理を実装します。 Clojureで値によって異なる処理を実装したい場合、同じようにクラスを作ることもできますが、その他にも「プロトコル」や「マルチメソッド」等いくつかの手段が用意されています。今回はその「マルチメソッド」を紹介します。 マルチメソッドとは マルチメソッドは複数の関数をまとめたような特殊な関数で、引数の型などによって実行時に処理を変えることができます。また、後から簡単に処理を追