http://www.dartlang.org/docs/spec/dartLangSpec.pdf
Спецификация языка для Dart упоминается ниже
Dart поддерживает необязательную типизацию на основе о типах интерфейсов. Система типов не работает из-за ковариантности универсальных типов . Это осознанный выбор (и, несомненно, противоречивый). Опыт показал, что правила звуковых типов для обобщений противоречат интуиции программиста . Это ..