Clojureの今によると、 Clojure 1.3 からプリミティブ型による型注釈が可能になったようです。プリミティブ 型による型注釈は、最適化において最も重要な情報の一つですから、当然なが らその結果として、プリミティブな演算を伴う処理の高速化が期待できるわけ です。スライドでは、以下の fib 関数を例にとって、型注釈を与えた場合と 与えなかった場合とで、どれだけ実行速度が違うかを示しています。 ;; 型注釈なし (defn fib [n] (if (<= n 1) 1 (+ (fib (dec n)) (fib (- n 2))))) (time (fib 38)) ;=> Elapsed time: 4100.272 msecs ;; 型注釈あり (defn fib ^long [^long n] (if (<= n 1) 1 (+ (fib (dec n)) (fib (- n