Re[3]: Как бороться с динамической типизацией?
От: Evgeny.Panasyuk Россия  
Дата: 18.05.14 07:59
Оценка:
Здравствуйте, kaa.python, Вы писали:

KP>Да, ситуация похожа, это верно. Хотя есть и кардинальное отличие – проблема вылезет на этапе компиляции, а не "когда нибудь потом", что иногда сильно напрягает.


Да, но к сожалению, не всегда. Например, Forward Iterator и Input Iterator имеют одинаковый синтаксис, соответственно ошибки на этапе компиляции не будет (если не делать специальные проверки на forward_iterator_tag).

EP>>По поводу "все помнят параметры у API наизусть" — важны ведь не только сами параметры, но ещё и pre/post-conditions — так что за исключением каких-то тривиальных случаев, описание придётся читать в любом случае.

KP>Да, за прелести динамической типизации приходится платить

Не, я как раз о другом — pre/post-conditions нужно знать и при статической типизации. То есть, независимо от того, знаем ли мы точную сигнатуру функции или нет — нам потребуется дополнительная информация о pre/post-conditions.
Конечно при хорошем/консистентном API, либо совсем тривиальном, о многом можно догадаться взглянув на набор параметров, но всё-таки в общем случае нужно читать документацию (и при статической и при динамической типизации).
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.