тип последовательности замыкания - PullRequest
5 голосов
/ 18 июля 2011

Какой правильный тип последовательности?У меня есть этот код:

(defrecord MethodInfo [^clojure.lang.ISeq preconds ^clojure.lang.ISeq postconds])

Но, похоже, он не обеспечивает правильного соблюдения требований к типу, так как я могу написать (new MethodInfo 1 2).

1 Ответ

7 голосов
/ 18 июля 2011

Насколько я понимаю, подсказок типа Clojure предназначены только для повышения производительности, чтобы улучшить поиск метода путем отражения в сторону;Это их единственное назначение, а не принудительное применение статических типов в динамическом языке.

Пожалуйста, посмотрите этот ответ на аналогичный вопрос .

Редактировать:

Говорят о возможности принудительного применения примитивных типов возврата в некоторых случаях в Clojure 1.3 , но это явно то, что постоянно меняется и не будет применяться к типам последовательностей..

...