Вчера Рич вытащил «новую» ветку Clojure в мастера. Теперь мы охватываем красоту, которая является deftype и defprotocol. Конечно, я, выходец из Haskell, очень соблазнен для определения типов, как я бы это делал в Haskell, что будет практически для всего, кроме короткого кортежа, но я не думаю, что это работает в мире Clojure;). В ветке Common Mistakes для Clojure один парень упомянул, что чрезмерное использование структур было ошибкой, которую он совершил, когда впервые начал работать с OOP. Поскольку дефтипы, похоже, похожи на структуры, мне было интересно, применяется ли там то же самое.
Итак, мой вопрос: когда пора использовать deftype?