Clojureを使用すると、次deftype
のようなインターフェイスを不完全に実装できます。
(deftype Foo [x] clojure.lang.ISeq (next [this] x))
(Foo
は実装していませんseq
)。ダックタイピングのPythonの土地、またはせいぜい(または、POVによっては最悪の場合)ABCから来ているので、インターフェイスのポイントはメソッドのセット(現在のように、他の人のdeftype
を安全に使用するには、各「メソッド」呼び出しをでラップする必要があるようtry...catch
です)。